-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: Edek <e...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: jaki wybrac jezyk?
Date: Wed, 17 Aug 2011 11:55:30 +0200
Organization: ATMAN - ATM S.A.
Lines: 54
Message-ID: <j2g39k$4hl$1@node2.news.atman.pl>
References: <2...@v...googlegroups.com>
<5...@n...onet.pl>
<j26pdv$s41$1@node2.news.atman.pl>
<s...@b...pl>
NNTP-Posting-Host: static-81-219-28-205.devs.futuro.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1313575028 4661 81.219.28.205 (17 Aug 2011 09:57:08 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Wed, 17 Aug 2011 09:57:08 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110428
Linux/3.1.0-15 Thunderbird/3.1.0
In-Reply-To: <s...@b...pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:191951
[ ukryj 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
- Alg. kompresji LZW
- 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??
Najnowsze wątki
- 2025-03-07 Warszawa => Data Engineer (Tech Leader) <=
- 2025-03-07 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-03-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-03-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-03-07 Chiny-Kraków => Senior PHP Symfony Developer <=
- 2025-03-07 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-07 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-03-07 Warszawa => International Freight Forwarder <=
- 2025-03-07 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-03-07 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-03-07 Piaseczno => Developer .NET <=
- 2025-03-07 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-03-07 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-03-07 Warszawa => Gen AI Engineer <=