-
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
Następne wpisy z tego wątku
- 16.12.19 00:05 g...@g...com
- 16.12.19 20:02 Maciej Sobczak
- 16.12.19 21:53 g...@g...com
- 17.12.19 19:19 Maciej Sobczak
- 18.12.19 17:42 Roman Tyczka
- 18.12.19 22:19 g...@g...com
- 18.12.19 23:37 M.M.
- 19.12.19 11:09 Maciej Sobczak
- 01.01.20 23:25 Maciej Sobczak
- 02.01.20 12:36 g...@g...com
- 02.01.20 21:22 Maciej Sobczak
- 02.01.20 21:26 Maciej Sobczak
- 02.01.20 21:32 g...@g...com
- 04.01.20 20:00 Maciej Sobczak
- 08.01.20 11:12 bartekltg
Najnowsze wątki z tej grupy
- 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
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-12-02 Gdańsk => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-12-02 Kraków => Full Stack .Net Engineer <=
- 2024-12-02 Warszawa => Key Account Manager <=
- 2024-12-02 Kraków => Software .Net Developer <=
- 2024-12-02 Wrocław => Inżynier bezpieczeństwa aplikacji <=
- 2024-12-02 Gdańsk => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-12-02 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-12-02 Akumulatorki Ni-MH AA i AAA Green Cell
- 2024-12-02 Usiłowanie zabójstwa
- 2024-12-01 Rambo 2024. Co z radio-stopem
- 2024-12-01 Pijani kierowcy
- 2024-12-01 "Chciałem zamówić kurs tym"
- 2024-11-30 Windykatorzy ścigają spadkobierców z mandat nieboszczyka za przekroczenie prędkości???
- 2024-11-30 Łódź => Technical Artist <=
- 2024-11-30 Lublin => Inżynier Serwisu Sprzętu Medycznego <=