-
Data: 2011-08-17 09:55:30
Temat: Re: jaki wybrac jezyk?
Od: Edek <e...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 08/17/2011 10:12 AM, Artur M. Piwko wrote:
> In the darkest hour on Sat, 13 Aug 2011 23:11:59 +0200,
> Edek<e...@g...com> screamed:
>>>> Ale jakiego zadania? Przecież nic nie opisałeś - wiadomo tylko, że dla
>>>> danych wejściowych program ma wyprodukować wartości wyjściowe. I że
>>>> jest text I/O.
>>>> Wszystkie języki się do tego nadają.
>>> Nie znam takich języków jak Prolog, Lisp, Python, Perl. Zastanawiam
>>> się czy warto któregoś się pouczyć. Czy można tak ogólnie o którymś
>>> z nich powiedzieć, że zapis typowych algorytmów niesie mniejsze ryzyko
>>> pomyłki?
>>
>> Z powyższych, poprawnie używane C++. Z powodu pełnej kontroli typów
>> podczas kompilacji.
>>
>
> To jest akurat marginalna zaleta. Podobnie sprawdzi się poprawnie
> używany Python. Nie trzeba ludzi straszyć dynamicznie typowanymi
> językami. https://docs.google.com/View?id=dcsvntt2_25wpjvbbhk
>
Nikogo nie straszę, znam zalety testów, w dowolnym języku da się napisać
dowolną ilość linijek.
Sprawa polega na czym innym, mówimy o wyższości jednego języka nad
drugim w kontekście ilości popełnianych błędów. Tu nie da się ukryć, że
tak czy inaczej testy są pomocne, że w każdym się robi błędy itd.
Potrzebna jest inna miara.
W moim osobistym przypadku, ja czasami sprawdzam, ile linijek kodu
(napisanego, średnio skomplikowanego, przetestowanego) tworzę średnio
na minutę. I - w moim przypadku - wynik jest następujący: w Pythonie
średnia jest nieco niższa (sam kod, nie liczę linijek testów) niż w C++
i niższa niż w Javie. Co mi sugeruje, że moje tempo pisania włącznie
z poprawianiem kodu jest podobne w Pythonie c++ i Javie, bo Python jest
bardziej zwięzły.
Ale, przy bardziej skomplikowanym kodzie, mam problem z Pythonem. Być
może jest to kwestia IDE, że pisząc coś większego muszę dużo uwagi
poświęcać na to, czy x to float, dict czy lista list, a nie na to, czym
ta zmienna jest. W c++ mogę otagować nawet floaty, czyli mieć typ
float-znaczysię-średnia i typ float-znaczysię-mediana, jeżeli tylko
chcę. Inaczej mówiąc, C++ pozwala tworzyć wiele kontrukcji na
poziomie typów, które służą poprawności. W Pythonie niby też
część z tych rzeczy jest możliwa, tylko implementuje się to inaczej,
ale walidacja ma miejsce w runtime, co a) powoduje, że to robi się
jeszcze wolniejsze b) trzeba faktycznie wykonać w testach każdą linijkę,
żeby w ogóle się dowiedzieć, czy nie pomyliłem w kodzie mediany ze
średnią. Oczywiście, tak jak 2/3 c++, nikt nikogo nie zmusza do
używania języka właśnie w ten sposób, można pisać w c++ np. bez
tworzenia template'ów i nawet często tak się właśnie robi. YMMV.
Edek
Następne wpisy z tego wątku
- 17.08.11 10:01 Michal Kleczek
- 17.08.11 12:12 Stachu 'Dozzie' K.
- 17.08.11 12:15 Marcin Biegan
- 17.08.11 12:41 Paweł Kierski
- 17.08.11 12:52 Michal Kleczek
- 17.08.11 12:59 Michal Kleczek
- 17.08.11 13:12 Stachu 'Dozzie' K.
- 17.08.11 13:18 m...@t...pl
- 17.08.11 13:29 Marcin Biegan
- 17.08.11 13:30 Michal Kleczek
- 17.08.11 13:33 Michal Kleczek
- 17.08.11 13:39 Stachu 'Dozzie' K.
- 17.08.11 13:42 Stachu 'Dozzie' K.
- 17.08.11 13:57 Paweł Kierski
- 17.08.11 14:13 Jordan Szubert
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 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
Najnowsze wątki
- 2025-01-22 Gdańsk => System Architect (Java background) <=
- 2025-01-22 Katowice => Senior Field Sales (system ERP) <=
- 2025-01-22 Warszawa => Java Developer <=
- 2025-01-22 pokolenie Z
- 2025-01-22 Wyświtlacz ramki cyfrowej
- 2025-01-22 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-01-22 Chrzanów => Team Lead / Tribe Lead FrontEnd <=
- 2025-01-22 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-01-22 oferta na ubezpieczenie OC życie prywatne
- 2025-01-22 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-01-22 Warszawa => International Freight Forwarder <=
- 2025-01-22 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-21 Zgromadzenie użytkowników pojazdów :-)
- 2025-01-21 bateria na żądanie
- 2025-01-21 Warszawa => IT Business Analyst <=