-
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!news.uni-stuttgart.de!news.stw-bonn.de!newsreader4.netcolo
gne.de!news.netcologne.de!nx01.iad01.newshosting.com!newshosting.com!69.16.185.
16.MISMATCH!npeer02.iad.highwinds-media.com!news.highwinds-media.com!feed-me.hi
ghwinds-media.com!postnews.google.com!e35g2000yqc.googlegroups.com!not-for-mail
From: Maciej Sobczak <s...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: jaki wybrac jezyk?
Date: Sun, 14 Aug 2011 05:23:40 -0700 (PDT)
Organization: http://groups.google.com
Lines: 66
Message-ID: <a...@e...googlegroups.com>
References: <2...@v...googlegroups.com>
<5...@n...onet.pl>
NNTP-Posting-Host: 62.244.135.175
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1313324620 23435 127.0.0.1 (14 Aug 2011 12:23:40 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Sun, 14 Aug 2011 12:23:40 +0000 (UTC)
Complaints-To: g...@g...com
Injection-Info: e35g2000yqc.googlegroups.com; posting-host=62.244.135.175;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
User-Agent: G2/1.0
X-Google-Web-Client: true
X-Google-Header-Order: HUALESNKRC
X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13)
Gecko/20101203 Firefox/3.6.13,gzip(gfe)
Xref: news-archive.icm.edu.pl pl.comp.programming:191854
[ ukryj nagłówki ]On Aug 13, 10:56 pm, m...@t...pl wrote:
> Nie znam takich języków jak Prolog, Lisp, Python, Perl. Zastanawiam
> się czy warto któregoś się pouczyć.
Warto. wszystkich, może oprócz Perla.
> Kiedyś Java była reklamowana w ten sposób, że pisząc w Javie
> popełnia się mniej błędów, że Java ma np. kontrolę zakresów
> tablic, itd.
To jest akurat bzdurny argument. To, że Java ma kontrolę zakresów
tablic kompletnie nie przeszkodzi w zrobieniu błędu polegającego na
użyciu złego indeksu. W tej kategorii Java stoi na tym samym poziomie
co C, bo do obsługi indeksów ma jednego biednego inta.
Natomiast run-time Javy taki błąd wykryje i strzeli wyjątkiem, czyli
wywali się ładnie zamiast nieładnie. I to jest właśnie cały postęp:
można pisać programy, które się ładnie wywalają.
Faktem jest, że wielu ludziom to wystarcza, ale to nie jest ten sam
argument.
> Czy obecnie jakieś języki uznaje się za jeszcze
> bardziej pomocne w pisaniu bezbłędnego kodu?
A to jest inna kategoria. Do tego potrzebny jest język, którego reguły
i konstrukcje *zapobiegają* robieniu błędów. To jest zupełnie coś
innego, niż ich wykrywanie w run-time.
> Często słyszę opinię że Python mocno chroni programistę przed
> popełnianiem błędów.
Że co? To jeszcze większa bzdura. W Pythonie kompletnie nic nie chroni
programisty przed robieniem błędów, bo język nie jest statycznie
weryfikowany. Układ jest taki: programista robi błędy a run-time je
wykrywa. Albo i nie wykrywa.
> Mówi się że programy w Pythonie mają
> najmniej linii kodu i że Python to jest język w którym się
> myśli a nie koduje. W jakim stopniu to jest prawda?
Nie wiem, ale wiem, że mój produkt YAMI4 wspiera całą garść języków
programowania i z tej garści tylko Python nie działa poprawnie na 64-
bit, bo ma takie dziury w kodzie biblioteki standardowej, że ręce
opadają. Muszę pewien kawałek napisać od nowa i inaczej. Ciekawa
obserwacja, prawda?
> Jakie
> Python ma odpowiedniki javowej kontroli zakresów tablic?
Takie same. Czyli Ty robisz błędy a run-time je wykrywa (albo i nie
wykrywa), dzięki czemu program się ładnie wywala. Wystarcza Ci to? :-)
A na poważnie: jeśli naprawdę poszukujesz języka, który pomaga unikać
błędów i faktycznie pomaga je wykrywać statycznie a nie dopiero w run-
time, to polecam Adę.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 14.08.11 19:44 Michoo
- 15.08.11 14:24 Marszalkowski
- 15.08.11 15:01 A.L.
- 15.08.11 15:24 R. P.
- 15.08.11 15:38 m...@t...pl
- 15.08.11 15:52 m...@t...pl
- 15.08.11 15:52 R. P.
- 15.08.11 16:05 m...@t...pl
- 15.08.11 16:05 R. P.
- 15.08.11 16:14 m...@t...pl
- 15.08.11 16:15 R. P.
- 15.08.11 16:18 m...@t...pl
- 15.08.11 16:27 R. P.
- 15.08.11 16:32 m...@t...pl
- 15.08.11 16:32 R. P.
Najnowsze wątki z tej grupy
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
Najnowsze wątki
- 2025-07-23 Gdańsk => Programista Delphi <=
- 2025-07-23 Gdańsk => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-23 Warszawa => Starszy inżynier DevOps (AWS) <=
- 2025-07-23 Gdańsk => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-23 Kraków => Senior Fullstack Engineer (Low-Code Platform) <=
- 2025-07-23 Wrocław => Senior Key Account Manager IT <=
- 2025-07-23 Trójmiasto => Head of Social Media <=
- 2025-07-23 Rzeszów => Spedytor Międzynarodowy <=
- 2025-07-23 Lublin => ERP Implementation Consultant (AP Module) <=
- 2025-07-23 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-23 Warszawa => Inżynier oprogramowania .Net <=
- 2025-07-23 Kraków => Kotlin Developer <=
- 2025-07-23 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-07-23 Warszawa => Java Developer <=
- 2025-07-23 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=