🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.python
Article #28058

Re: Interpretowany czy kompilowany?

#28058
From: zbrodel
Date: Sun, 22 May 2011 17:29
50 lines
3245 bytes
On 22.05.2011 11:10, jacek2v wrote:
> Nie uważam, że testy dają 100% niezawodności, ale dają (znacznie
> wyższy poziom niezawodności) vs. (włożony nakład pracy na ich
> przygotowanie) niż (typowanie) vs. (włożony nakład pracy na pisanie
> kodu).
>

Ale dlaczego "versus"?
Statyczne typowanie nie zastępuje testów, ale daje dodatkoą weryfikację.
Program ze zgodnymi typami nie musi być poprawny, natomiast program w 
którym typy się nie zgadzają, poprawny nie będzie. Tyle i tylko tyle.

Co do testów - w innym poście tego wątku podałem przykład, będący nieco 
uproszczonym przypadkiem z życia wziętym, gdzie po refaktoringu i zmiany 
API jednej z bibliotek, do produkcji trafił kawałek niepoprawnego kodu 
mimo że testy przechodziły bezbłednie.
Akurat tutaj kontrola typów na etapie kompilacji załatwiłaby sprawę. 
Przy czym nie tweirdzę że jest to panaceum na wszystko.


> class c1{
>     public int m1(int a) {
>         a = a + 1;
>         return(a);
>     }
> }
> class c2 extends c1{
>     public int m1(int a) {
>         a = a + 2;
>         return(a);
>     }
> }
> public class jsimple{
>      public static void main (String[] args) {
> 	c1 o1 = new c2();
> 	System.out.println (o1.m1(3));
>      }
> }
> result: 5
>
> I co z tego, że typ c1? :(

Znaczy chcesz pokazać, że jak się spieprzy projekt struktury klas, to 
już nic nie pomoże? Z tym jestem się w stanie zgodzić.

Przy dobrze zaprojektowanych klasach powyższy problem nie wystąpi, a na 
źle zaprojektowane klasy lekarstwem nie jest ani kontrola typów, ani testy.

Pzdr
J.
Technical Details
Message-ID: <irbh66$4fa$1@news.onet.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.POSTED!not-for-mail
References: <iqmlha$r29$1@news.onet.pl> <4dcee603$1$2437$65785112@news.neostrada.pl> <iqo0j1$g9u$1@news.onet.pl> <87boz3anea.fsf@smsnet.pl> <iqqk2o$oh7$1@news.onet.pl> <0601cb5b-befa-46ba-9d1c-f105c81369fe@r35g2000prj.googlegroups.com> <iqrlte$rfe$1@news.onet.pl> <87k4dqe6vw.fsf@smsnet.pl> <iqt8gb$lo1$1@solani.org> <e423ccad-b001-4931-8e98-68982533d79f@d15g2000yqn.googlegroups.com> <iqtsq9$j2e$4@solani.org> <4d8313d9-cc85-4065-b94d-c7433e6d51de@p6g2000vbn.googlegroups.com> <iqugpk$vbu$3@solani.org> <64a9b1f5-e71a-4b1e-b54b-029a032d6a17@x1g2000yqb.googlegroups.com> <ir58gg$me$1@speranza.aioe.org> <2f93f4ca-ccb1-42a5-b199-2d9902ee8629@l18g2000yql.googlegroups.com> <ir90vs$nd8$1@speranza.aioe.org> <b807128c-8325-4ef6-93a9-c41ba1609583@h7g2000yqa.googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.POSTED!not-for-mail
From: zbrodel@tlen.pl
Newsgroups: pl.comp.lang.python
Subject: Re: Interpretowany czy kompilowany?
Date: Sun, 22 May 2011 19:29:41 +0200
Organization: http://onet.pl
Lines: 50
Message-ID: <irbh66$4fa$1@news.onet.pl>
References: <iqmlha$r29$1@news.onet.pl> <4dcee603$1$2437$65785112@news.neostrada.pl> <iqo0j1$g9u$1@news.onet.pl> <87boz3anea.fsf@smsnet.pl> <iqqk2o$oh7$1@news.onet.pl> <0601cb5b-befa-46ba-9d1c-f105c81369fe@r35g2000prj.googlegroups.com> <iqrlte$rfe$1@news.onet.pl> <87k4dqe6vw.fsf@smsnet.pl> <iqt8gb$lo1$1@solani.org> <e423ccad-b001-4931-8e98-68982533d79f@d15g2000yqn.googlegroups.com> <iqtsq9$j2e$4@solani.org> <4d8313d9-cc85-4065-b94d-c7433e6d51de@p6g2000vbn.googlegroups.com> <iqugpk$vbu$3@solani.org> <64a9b1f5-e71a-4b1e-b54b-029a032d6a17@x1g2000yqb.googlegroups.com> <ir58gg$me$1@speranza.aioe.org> <2f93f4ca-ccb1-42a5-b199-2d9902ee8629@l18g2000yql.googlegroups.com> <ir90vs$nd8$1@speranza.aioe.org> <b807128c-8325-4ef6-93a9-c41ba1609583@h7g2000yqa.googlegroups.com>
NNTP-Posting-Host: abag229.neoplus.adsl.tpnet.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1306085382 4586 83.6.170.229 (22 May 2011 17:29:42 GMT)
X-Complaints-To: niusy@onet.pl
NNTP-Posting-Date: Sun, 22 May 2011 17:29:42 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110424 Thunderbird/3.1.10
In-Reply-To: <b807128c-8325-4ef6-93a9-c41ba1609583@h7g2000yqa.googlegroups.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit