Article View: alt.pl.comp.lang.csharp
Article #9833Re: .NET krytycznym okiem
From: Tomasz Kopacz
Date: Thu, 10 Nov 2005 23:06
Date: Thu, 10 Nov 2005 23:06
67 lines
4107 bytes
4107 bytes
On Tue, 8 Nov 2005 07:45:52 +0100, Rami wrote: > Użytkownik "Wiktor Zychla" <user@nospam.com.eu> napisał w wiadomości > news:dkonio$t5b$1@atlantis.news.tpi.pl... >>> no to weźmy na początek mechaniznm wyjątków: >>> moim zdaniem brak specyfikacji wyjątków, jest bardzo złym pomysłem, bo > co >>> w >>> systuacji gdy korzystamy z czyjejś klasy, skąd mamy wiedzieć jakie > wyjątki >>> są rzucane, a przecież trzeba jakieś działania podjąć. a nawet jeśli > sami >>> napisaliśmy klasę, to nie musimy pamiętać co i jak jest rzucane. pół > biedy >>> kiedy mamy dokumentację, bo wtedy możemy liczyć, że wszystko jesta >>> napisane, >>> ale co jeśli nie jest? i co jeśli nie mamy dokumentacji? uważam to za > duży >>> problem i myślę, że wiele osób zgodzi się z tą opinią.... >> >> ... z drugiej strony jeśli Ty piszesz bibliotekę A, z niej korzysta >> biblioteka B, z niej biblioteka C, która jest OpenSource i poszła w świat > do >> kilku tysięcy ludzi i nagle przyszło Ci do głowy dołożyć jedną linijkę > kodu >> do jednej ze swoich metod, która to linijka rzuca jakimś > niewyspecyfikowanym >> dotąd wyjątkiem, to okazuje się, że cały świat musi zrekompilować swoje >> programy z powodu jednej drobnej zmiany w Twoim kodzie. >> > > > to Twoim zadaniem jest tak pisać biblioteki, aby były kompatybilne z > wcześniejszymi wersjami, > jeśli potrzebujesz rzucić innego typu wyjątkiem to robisz funkcję o innej, > podobnej nazwie i tylko informujesz, że "dobrze by było" używać nowej > funkcji. tak przecież działa java, mamy setki funkcji, które są > "deprecated", ale muszą pozostać w bibliotece w niezmienionej wersji, aby > zapewnić wsteczną zgodność. I wg. ciebie to dobry pomysł????? Rozumiem że bardzo ci się podoba organizacja Windows API :) Albo com-owskie interface2,interface3 itp. Mnie tam się podoba mechanizm że obiekt jest związany z _konkretną_ mocną nazwą pakietu - a jak ktoś lubi to po prostu będzie n wersji pliku dll - trudno; był popularny I wtedy - czy są wyjątki zrealizowane jak w javie, czy jak w C# - to mniej istotne Natomiast - co do tego by wiedzieć kto gdzie rzuca wyjątek... Tak naprawdę przecież może nagle zabraknąć pamięci - i mieć nieoczekiwany wyjątek.. Weź pod uwagę że za takim sposobem podejścia do wyjątków jak w C# masz określony sposób budowy Exception - np.masz je de facto pogrupowane wg. "sytuacji" wyjątkowych - i generalnie aplikacja rzuca wyjątek nie swój własny, a np. - systemowy; zresztą w 1.1 pierwsze rzucenie wyjątku danego typu trwa długo; w 2.0 - troszkę krócej Na marginesie - tak samo można robić w Javie, ale ten kod co ja widziałem miał np. "MyFileNotFoundException - czy coś takiego... To jest kwestia umowy, sposobu projektowania. Mnie się wydaje wygodniejszy C# - bo nie muszę się kłopotać czy mi coś nagle gdzieś na dole nie rzuci wyjątku ;) -- Pozdrawiam, Tomasz Kopacz
Technical Details
Message-ID:
<phwp2ki9wn3s$.dlg@fdsvzxcc.rtb.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mailReferences:
<dkj7pd$o6q$1@nemesis.news.tpi.pl> <dko7pl$8t8$1@inews.gazeta.pl> <dkodq5$ioo$1@achot.icm.edu.pl> <dkog7o$odn$1@inews.gazeta.pl> <dkohr4$omk$1@achot.icm.edu.pl> <dkol9j$jv9$1@inews.gazeta.pl> <dkonio$t5b$1@atlantis.news.tpi.pl> <dkphil$bb3$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail From: Tomasz Kopacz <tkopacz@nospam.idg.com.pl> Newsgroups: alt.pl.comp.lang.csharp Subject: Re: .NET krytycznym okiem Date: Fri, 11 Nov 2005 00:06:19 +0100 Organization: tp.internet - http://www.tpi.pl/ Lines: 67 Message-ID: <phwp2ki9wn3s$.dlg@fdsvzxcc.rtb.com> References: <dkj7pd$o6q$1@nemesis.news.tpi.pl> <dko7pl$8t8$1@inews.gazeta.pl> <dkodq5$ioo$1@achot.icm.edu.pl> <dkog7o$odn$1@inews.gazeta.pl> <dkohr4$omk$1@achot.icm.edu.pl> <dkol9j$jv9$1@inews.gazeta.pl> <dkonio$t5b$1@atlantis.news.tpi.pl> <dkphil$bb3$1@inews.gazeta.pl> NNTP-Posting-Host: qr170.internetdsl.tpnet.pl Mime-Version: 1.0 X-Trace: atlantis.news.tpi.pl 1131663989 894 80.55.43.170 (10 Nov 2005 23:06:29 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Thu, 10 Nov 2005 23:06:29 +0000 (UTC) User-Agent: 40tude_Dialog/2.0.15.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit