-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Andrzej Jarzabek <a...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: jaki wybrac jezyk?
Date: Tue, 16 Aug 2011 00:07:13 +0100
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 42
Message-ID: <j2c8r4$gik$1@inews.gazeta.pl>
References: <5...@n...onet.pl>
<5...@n...onet.pl>
NNTP-Posting-Host: 5ac53c9d.bb.sky.com
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1313449636 16980 90.197.60.157 (15 Aug 2011 23:07:16 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Mon, 15 Aug 2011 23:07:16 +0000 (UTC)
X-User: septi
In-Reply-To: <5...@n...onet.pl>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20110624
Thunderbird/5.0
Xref: news-archive.icm.edu.pl pl.comp.programming:191912
[ ukryj nagłówki ]On 14/08/2011 08:05, Marszalkowski wrote:
>
>> a jak duze sa te programy (w tysiacach lini?) 50 tys?
>> mniej? wiecej?
> Nie są zabójczo duże, są skomplikowane. Algorytmy są
> trudne i zapis jest popaprany w celu przyspieszenia.
>
>> mz python raczej odpada bo pewnie byloby niesamowicie
>> wolno - slabo znam pythona ale cos tak mi sie wydaje
> Aplikacja testowa może działać wolno. Aplikacja pierwotna
> na wyrywki zrzuci dane wejściowe i wyniki obliczeń do pliku.
> Aplikacja testowa wczyta wiersz danych, może sobie długo
> liczyć bezpiecznym algorytmem i sprawdzić czy wyjście jest
> takie samo.
Ja bym w tej sytuacji pomyślał najpierw o napisaniu unit testów, w C++
ale bez głupich optymalizacji. To prawda, że C++ ma więcej potencjału do
popełniania błędów niż niektóre inne języki, ale przy czytelnym zapisie
algorytmu i zastosowaniu odpowiednich technik możesz mieć równie dobre
zabezpieczenia, co w Javie - np. w celu kontroli zakresu na tablicach
zamiast gołych tablic można użyć boost::array z at(), zdecydowanie
ograniczyć gołe wskaźniki do sytuacji absolutnie wyjątkowych (i
szczelnie opakowanych) itd. itp.
Testy end-to-end można robić w dowolnym języku, ale możesz chcieć
rozważyć to, że szybkość ich działania też może być nie bez znaczenia, w
szczególności jeśli chcesz nimi duplikować intensywne obliczenia:
idealnie chciałbyś móc zapuścić suitę testów regresyjnych na każdym
nightly buildzie, a sam fakt przemielenia większej ilości takich testów
też daje większą pewność. Pod tym względem chyba faktycznie jedynym
poważnym konkurentem C++ jest Ada. Ale też bym nie liczył na to, że
zmiana języka da ci w tym przypadku jakąś kolosalną różnicę. Już lepiej
pomyśleć dłużej nad projektem.
Natomiast w miarę obejmowania programu testem, powinieneś wykorzystywać
pojawiające się okazje do wyplenienia szpetoty z kodu produkcyjnego.
Obstawiam, że w bardzo wielu miejscach, gdzie ta szpetota jest
uzasadniana wydajnością, wcale nie jest ona potrzebna. Po prostu dobrze
pamiętać, które rzeczy w C++ bardzo skutecznie redukowane są przez
optymalizację. Może się okazać, że nawet te ujemne indeksy praktycznie
nic nie dają :)
Następne wpisy z tego wątku
- 15.08.11 23:26 slawek
- 16.08.11 01:21 A.L.
- 16.08.11 04:32 Maciej Pilichowski
- 16.08.11 06:27 Michal Kleczek
- 16.08.11 06:32 Michal Kleczek
- 16.08.11 07:56 Tomasz Kaczanowski
- 16.08.11 09:51 Wojciech \"Spook\" Sura
- 16.08.11 13:38 A.L.
- 16.08.11 20:27 Maciej Sobczak
- 16.08.11 20:29 Adam Przybyla
- 16.08.11 21:24 m...@t...pl
- 16.08.11 21:31 m...@t...pl
- 17.08.11 04:30 Maciej Pilichowski
- 17.08.11 05:23 m...@t...pl
- 17.08.11 06:11 Michal Kleczek
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-02-14 Zdalne załączanie grzałki bojlera elektrycznego
- 2025-02-14 Warszawa => Kierownik ds. kluczowych Klientów <=
- 2025-02-14 Częstochowa => Product Manager - Systemy infrastruktury teleinformaty
- 2025-02-14 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-02-14 Warszawa => Data Engineer (Tech Leader) <=
- 2025-02-14 Czy ma sens grupa news:pl.soc.polityka-prawna ? :-)
- 2025-02-14 e-paper
- 2025-02-14 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-14 Warszawa => System Architect (Java background) <=
- 2025-02-14 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-14 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-14 Re: Dlaczego nie było (pełzającego) zamachu stanu? Bo minister Bodnar już "zawiesił" prokuratora Ostrowskiego
- 2025-02-14 e-paper
- 2025-02-14 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-14 Warszawa => International Freight Forwarder <=