-
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.belwue.de!news.osn.de!diablo2.n
ews.osn.de!195.114.241.69.MISMATCH!feeder.news-service.com!postnews.google.com!
hl8g2000vbb.googlegroups.com!not-for-mail
From: Maciej Sobczak <s...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: jaki wybrac jezyk?
Date: Mon, 15 Aug 2011 12:46:29 -0700 (PDT)
Organization: http://groups.google.com
Lines: 87
Message-ID: <3...@h...googlegroups.com>
References: <2...@v...googlegroups.com>
<5...@n...onet.pl>
<a...@e...googlegroups.com>
<op.vz9ot2qr8x7o78@notebook>
NNTP-Posting-Host: 77.254.237.176
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1313437589 11794 127.0.0.1 (15 Aug 2011 19:46:29 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Mon, 15 Aug 2011 19:46:29 +0000 (UTC)
Complaints-To: g...@g...com
Injection-Info: hl8g2000vbb.googlegroups.com; posting-host=77.254.237.176;
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:191905
[ ukryj nagłówki ]On Aug 15, 8:11 pm, "Wojciech \"Spook\" Sura" <spook"mad@hatter"op.pl>
wrote:
> To nie jest prawda. Jest możliwe, że taki program w C nie tyle wywali się
> nieładnie, co w ogóle się nie wywali - ba, w niektórych okolicznościach
> będzie nawet działał poprawnie. Zdecydowanie wolę, żeby program z marszu
> rzucił wyjątkiem niż żeby działał dalej w niezdefiniowany sposób.
Tak, jest w tym jakaś wartość. Przynajmniej wiadomo, że program nie
brnie "w buraki".
> *W tym
> kontekście* absolutnie zgadzam się ze stwierdzeniem, że w Javie robi się
> mniej błędów.
Otóż nie, to nie przeszkadza w robieniu błędów. Ten mechanizm je co
najwyżej wykrywa. W run-time. Nic nie stoi na przeszkodzie, żeby
wysłać klientowi program z błędem i w tym kontekście uważam, że Java
nie wnosi istotnego postępu w dziedzinie poprawności.
> Poza tym chodzi tu o cały pakiet tego typu wymogów językowych - m.in.
> jawne deklarowanie rzucanych wyjątków,
Jawne deklarowanie wyjątków się nie sprawdziło w praktyce i Javowcy
masowo to pomijają. Nie, nie chodzi o początkujących adeptów, robią
tak również projektanci poważnych frameworków. Po prostu się nie
sprawdziło.
> silniejsza kontrola typów
Np. gdzie?
Bo ja znalazłem taki fajny przykład:
import java.util.TreeSet;
class NonComparable {}
public class Test {
public static void main(String[] args) {
TreeSet<NonComparable> mySet = new TreeSet<NonComparable>();
mySet.add(new NonComparable());
mySet.add(new NonComparable());
}
}
W funkcji main są trzy linijki.
W języku z poważną statyczną kontrolą typów powinien być błąd
kompilacji w pierwszej linii, gdzie tworzony jest bezsensowny typ
zbioru. Tak się stanie np. w Adzie (w równoważnym przykładzie).
W języku z trochę gorszą kontrolą typów poleci błąd kompilacji w
drugiej linii, gdzie dodawany jest element do zbioru. Tak jest w C++.
W języku, który jest niepoważny, błąd poleci dopiero w run-time i
dopiero w trzeciej linii, chociaż ona kompletnie nie różni się od
drugiej. Tak jest w Javie i większości skryptowych.
Sorki, ale dla mnie to lipa.
> i tak
> dalej.
To "i tak dalej" to głównie marketing.
> W dyskusji na temat tego, czy jeden język jest bardziej błędogenny od
> drugiego warto zastanowić się, czy rozmawiamy o teorii, czy o praktyce.
Oj, tak. :-D
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 15.08.11 19:49 Maciej Sobczak
- 15.08.11 21:07 Michoo
- 15.08.11 21:48 R. P.
- 15.08.11 23:07 Andrzej Jarzabek
- 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
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-12 Warszawa => Expert Recruiter 360 <=
- 2025-02-12 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-02-12 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-12 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-12 Kraków => PHP Full Stack Developer <=
- 2025-02-12 Karta dźwiękowa stereo
- 2025-02-12 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-12 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-02-12 Łódź => NodeJS Developer <=
- 2025-02-12 Błonie => Sales Specialist <=
- 2025-02-12 Dziwne zachowanie magistrali adresowej w 8085
- 2025-02-11 Mini pecet
- 2025-02-10 Spalił się spaliniak
- 2025-02-10 zarowka wifi - z sensowna apka lub lepiej albo lokalnie lub przez web. I zeby harmonogram miala
- 2025-02-10 Chrzanów => Programista NodeJS <=