eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingAlgorytm hex,dec<->liczba › Re: Algorytm hex,dec<->liczba
  • Data: 2017-07-11 22:30:26
    Temat: Re: Algorytm hex,dec<->liczba
    Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie 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

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: