eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingIle czasu zajmie komputerowi rozszerzony algorytm euklidesa?Re: Ile czasu zajmie komputerowi rozszerzony algorytm euklidesa?
  • Data: 2019-12-15 23:38:48
    Temat: Re: Ile czasu zajmie komputerowi rozszerzony algorytm euklidesa?
    Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    > Jeżeli idzie o Javę, to obawiam się, że korzystając z Twojej metody będziesz się
    musiał sam martwić o to, żeby przeportować i utrzymywać swój moduł na każdą
    interesującą Cię platformę.

    Akurat C++ jest dużo bardziej przenośny, niż Java, więc nie martwi mnie to zbytnio.

    > Czyli najważniejszą cechę Javy - przenośność pomiędzy platformami - wyrzucasz do
    kosza.

    Mój moduł będzie przenośny nawet na te platformy, na których JVM w ogóle nie da się
    zrobić. Problem więc jest dokładnie odwrotny - decydując się na pisanie takiego
    modułu pod kątem Javy, ograniczyłbym sobie ilość docelowych platform. To brzmi
    głupio, ale faktycznie, wielu ludzi właśnie tak się z własnej woli ogranicza.

    > Dodatkowo wołanie kodu natywnego jest na JVM kosztowne,
    > i stosując je, tracisz JVMowe optymalizacje.

    Akurat doświadczenie z wydajnością czegokolwiek podpowiada mi, że mój moduł będzie
    wtedy i tak najszybszą częścią takiego składaka. Więc znowu nie martwiłbym się tym
    zagadnieniem.

    > C++ jest językiem, którego nie ogarniają sami jego twórcy,

    Nie szkodzi. Ważne, że ogarnęli go twórcy wszystkich tych projektów, które w C++
    odniosłu sukces - a które nawet sam tutaj przytoczyłeś.

    > Tak. W przypadku języków programowania sukcesem jest popularność.
    > I jeżeli spojrzysz na rankingi popularności, to z łatwością dostrzeżesz, że Python
    zaczął się na nim pojawiać w okolicach 2000-2001 roku.
    > Czyli mniej więcej w czasie kiedy kierownik działu badań w Googlu napisał ten
    tekst: https://norvig.com/python-lisp.html

    Nie wiązałbym tej popularności z tym konkretnie artykułem. Przypuszczam nawet, że
    jeśli ktoś nie interesował się LISPem, to na ten artykuł w ogóle nie trafił.

    Guido został zatrudniony w Google'u w 2005. Python był już wtedy bardzo dobrze
    rozpoznawalny, w top 10 (https://www.youtube.com/watch?v=Og847HVwRSI). I raczej nie
    był to efekt jakiegoś artykułu napisanego dla fanów LISPa.

    > Ale C++ nie jest jedynym językiem, dla którego istnieją dobre narzędzia.

    Tak. Ale nie zaproponowałeś żadnego innego, który by ten warunek spełniał.

    > Paul Graham swego czasu pisał dużo na temat wyboru Common Lispu do swojego
    start-upu. Jego zdaniem to właśnie użycie tego języka dawało im przewagę nad
    konkurencją, bo mogli bardzo szybko dodawać do swojego produktu nowe ficzery, tym
    samym prześcigając konkurencję.

    Dokładnie tak samo tłumaczą swoje wybory wszyscy inni, którzy osiągnęli jakiś sukces.
    Co płynnie przenosi nas do wniosku, że wybór języka może być drugorzędny:

    > I podejrzewam, że Graham ma w tym przypadku rację - bo koniec końców to jego
    produkt. I nawet jeżeli ocena języka programowania jest subiektywna, to jeżeli ktoś
    na przykład czerpie frustrację z używania jakiegoś języka, to raczej trudno się
    spodziewać, żeby zaszedł w nim dalej od kogoś, kto używa swojego języka z
    przyjemnością.

    To prawda. Ale ponieważ powstało wiele produktów, które osiągnęły sukces, to może być
    też tak, że istotnym składnikiem sukcesu nie jest wybór języka, tylko entuzjazm do
    jego używania.

    > (I z dotychczasowych wypowiedzi wynika, że Osobliwy Nick nie był szczególnie
    zadowolony z C++, więc pewnie w jego przypadku warto rozejrzeć się za jakimiś
    alternatywami)

    Z dotychczasowych wypowiedzi wynika, że w ogóle nie był zadowolony ze swoich
    osiągnięc programistycznych, więc na dzień dzisiejszy chyba każdy język startuje z
    równej pozycji. Ale jeżeli składnik subiektywny ma odegrać istotną rolę, to tego
    oczywiście nie rozstrzygniemy. Osobliwy sam musi to zrobić.

    > Natomiast w tej historii to nie Graham i nie Persson poniósł koszty przepisywania,
    tylko - odpowiednio - Yahoo i Microsoft. Z tego co wiem, autorzy kodu byli raczej
    zadowoleni z transakcji, a przepisanie go na C++ było czymś, co miało sens z
    perspektywy nabywców (a dlaczego tak było? Bo może mieli u siebie zatrudnionych wielu
    doświadczonych programistów C++, w związku z czym przepisanie kodu na ten język miało
    dla nich sens)

    Mogło tak być. Czyli kierował nimi entuzjazm.
    Ale skoro ostatecznie osiągnęli sukces, to najwyraźniej nie była to zła decyzja.

    > Dlatego jeśli miałbym wybierać pomiędzy tym, czy projekt ma być zrealizowany, a
    tym, czy do realizacji projektu mam użyć C++, i nigdy go nie ukończyć, to raczej bym
    się nie zastanawiał.

    Ale nie ma przesłanek do twierdzenia, że w C++ byś go nie ukończył. To raczej pachnie
    uprzedzeniami.

    --
    Maciej Sobczak * http://www.inspirel.com

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: