-
X-Received: by 10.36.124.10 with SMTP id a10mr746544itd.6.1499805026723; Tue, 11 Jul
2017 13:30:26 -0700 (PDT)
X-Received: by 10.36.124.10 with SMTP id a10mr746544itd.6.1499805026723; Tue, 11 Jul
2017 13:30:26 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!
188no2637249itx.0!news-out.google.com!f200ni3900itc.0!nntp.google.com!188no2637
238itx.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Tue, 11 Jul 2017 13:30:26 -0700 (PDT)
In-Reply-To: <a...@n...v.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=77.254.46.112;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 77.254.46.112
References: <ojbd2k$m8a$1@node1.news.atman.pl> <ojdmh3$1u2$3@node2.news.atman.pl>
<6...@g...com>
<oje1q0$cv5$1@node2.news.atman.pl>
<c...@g...com>
<ojghmi$no5$1@node2.news.atman.pl>
<d...@g...com>
<ojgj5c$oul$1@node2.news.atman.pl> <ojgjjo$pam$1@node2.news.atman.pl>
<f...@g...com>
<ojgmpg$riu$1@node1.news.atman.pl>
<b...@g...com>
<ojgnpv$ses$1@node1.news.atman.pl>
<f...@g...com>
<ojj04l$2q6$3@node1.news.atman.pl>
<7...@g...com>
<ojmhb1$ie7$1@node1.news.atman.pl>
<a...@g...com>
<ojoq0n$cv4$1@node2.news.atman.pl>
<3...@g...com>
<5...@g...com>
<2...@g...com>
<1...@g...com>
<a...@n...v.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <c...@g...com>
Subject: Re: Algorytm hex,dec<->liczba
From: "M.M." <m...@g...com>
Injection-Date: Tue, 11 Jul 2017 20:30:26 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:210709
[ ukryj nagłówki ]On Tuesday, July 11, 2017 at 7:16:07 PM UTC+2, slawek wrote:
> On Tue, 11 Jul 2017 09:25:48 -0700 (PDT), s...@g...com wrote:
> > > Poza tym ma największe możliwości z pośród dost=
> > ępnych języków programowania: szablony, wielodziedziczenie, =
> > przeładowywanie operatorów.
>
> No, no.
>
> A ma monady? Nie ma? O to wuj!
>
> Tak na marginesie: redefiniowanie operatorów to nie jest tak dobry
> pomysł jak się wydawało w latach 90-tych.
Gdy normalnie programuję, to są dwie możliwości. Albo robię klasę
obudowującą (niemal dosłownie) jednego inta i dla niej operatory
dodawania, odejmowania są tak naturalne, że sam nie wiem kiedy
te operatory przedefiniuję. Albo... w ogóle nigdy nie przedefiniowuję
operatorów. Gdy nie programuję normalnie, tylko bardzo, bardzo
starannie i dam sobie dużo czasu na przemyślenie, to wtedy czasami w
minimalnym stopniu używam przedefiniowania. Podsumowując, gdy się
pisze w pośpiechu, to funkcja jednak jest tworem w jakimś minimalnym
stopniu samodokumentującym się.
> Dziedziczenie
> wielobazowe... no cóż ma to zalety seksu grupowego:
Nie. Ma to takie zalety, (rzecz jasna chodzi o zalety względem
konkurencyjnego rozwiązania jakim jest agregacja wielu obiektów
wewnątrz klasy bazowej) że nie trzeba przeklepywać nazw funkcji, a
gdy nazwy takie same (potencjalny konflikt) to można użyć
operatora :: i wskazać o którą bazową klasę chodzi. Bez dziedziczenia
wielobazowego nie masz od razu dostępu do wszystkich metod w klasach
bazowych.
> wiele możliwości, ale nie każdy w tym się odnajdzie, potem nie
> wiadomo co jest odziedziczone po kim, drzewo klas przypomina
> zasieki spod Verdun.
Tak, gdy nadużywałem, to miałem właśnie takie problemy. Przyznaję
rację, że łatwo o nadużycia. Niejeden programista, w tym ja sam
tak robiłem, stosuje wielodziedziczenie np. po to aby zabłysnąć
że opanował ten mechanizm.
> Koparka jest dzieckiem silnika i łyżki oraz gąsienicy.
Bez względu na to, czy przekonałeś mnie tym przykładem, czy nie, powiedz,
co proponujesz w zamian dziedziczenia wielobazowego? Proponujesz
agregację? Zgadłem? Jeśli zgadłem, to powiedz mi, co zabrania stosowania
agregacji w C++? Otóż nic tego nie zabrania. A że ludzie nadużywają...
cóż mam powiedzieć, sam nadużywałem.
> A może jednak
> ma silnik, łyżkę i gąsienicę? Szablony?
To już było powyżej.
> Po co komu szablony jak ma
> kaczyzm typowania? Szablony to tylko próba, co prawda heroiczna,
> obejścia dyscypliny w typach.
Owszem. Elegancki kaczyzm w C++ to metody wirtualne. Rozwiązania na
metodach wirtualnych (lub jakiś wskaźnikach na funkcje) są moim
zdaniem bardziej przejrzyste. Poza tym składnia szablonów jest
brzydka, ale z tego co wiem, szukano składni alternatywnej i
nic fajnego nie znaleziono. Szablony od jakiegoś czasu dają kompilatorowi
szansę na wygenerowanie bardziej efektywnego kodu, skrojonego na konkretny
typ. Dają też szansę na wychwycenie niektórych błędów.
Pozdrawiam
Następne wpisy z tego wątku
- 11.07.17 23:53 slawek
- 12.07.17 01:00 M.M.
- 12.07.17 08:21 slawek
- 12.07.17 11:43 Roman Tyczka
- 12.07.17 14:05 slawek
- 12.07.17 15:24 M.M.
- 12.07.17 20:44 AK
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2024-12-21 Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 2024-12-21 Ideologia Geniuszy-Mocarzy dostępna na nowej s. WWW energokod.pl
- 2024-12-21 ciekawy układ magnetofonu
- 2024-12-21 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2024-12-21 Warszawa => Java Developer <=
- 2024-12-21 Zalesie Borowe => Medical Equipment Service Engineer <=
- 2024-12-21 Żerniki => Specjalista ds. Employer Brandingu <=
- 2024-12-21 jak tacy debile
- 2024-12-20 Precedensy politycznie motywowanego nie wydawania w UE
- 2024-12-20 Obrońcy
- 2024-12-20 Obrońcy
- 2024-12-20 Obrońcy
- 2024-12-20 Gdańsk => Inżynier bezpieczeństwa aplikacji <=
- 2024-12-20 czyste powietrze
- 2024-12-20 Katowice => Analyst in the Trade Development department (experience wi