Article View: pl.comp.lang.python
Article #26792Re: python vs php - potrzebne argumenty
From: pakalk
Date: Mon, 02 Nov 2009 16:47
Date: Mon, 02 Nov 2009 16:47
109 lines
5839 bytes
5839 bytes
On Nov 2, 9:51 am, "Jaroslaw Zabiello" <use...@onet.eu> wrote: > > > 2. Potem nie trzeba testować jaki wyjątek nam wyskoczył? Ciekawe. > > Prawda? Możesz wszystkie wyjątki do kup wyłapać w wyższej warstwie bez > wnikania w ich rodzaj. I ciekawe jak grupowo obslugujesz kilka roznych wyjatkow. Bardzo ciekawe. Chyba zapisujac to tylko do loga. > > > Pisze o sytuacji, gdy nie zostanie przechwycony > > Tak jest możliwe tylko w PHP bo ma dziurawy system wyjątków. W Pythonie (i > reszcie normalnych języków) można przechwycić *wszelkie wyjątki*. Mozna ale nie trzeba. Ify tez mozna wszedzie wsadzic. > > I ty mówisz że znasz PHP? Tak, znam. No powiedz mi co pozmieniali? Tzn. o co konkretnie Ci chodzi. > > > Twórcy UML-a też pewnie jedzą. Czemu o nich nic nie piszesz? ;> > > Bo już dostałeś na to odpowiedź. UML nie ma tu nic do rzeczy. Jasne. Model obiektowy i jego wlasnosci ustalaja bywalcy tej grupy dyskusyjnej. > > > Wystarczy spojrzeć na UML > > j.w. j.w. > > > Ale metody statyczne/klasowe sa - co z tego, ze inaczej je nazwiemy? > > Singleton to nie jest metoda statyczna. Nawet w Javie singleton nie jest > metodą statyczną. Mylisz pojęcia. Jakie znaczenie ma sposob realizacji funkcji metody statycznej? > > >> > 1. Metoda klasowa (np. w pythonie) == metoda statyczna (w np. Javie) > > >> Nie. Klasa w Pythonie jest obiektem a metoda klasowa jest jej > >> singletonem. > > > Mowie o zachowaniu a nie jego realzacji. I sie tak zachowuje. > > Właśnie że tak się *nie* zachowuje. Metodę klasową przeciążysz, statyczną > już nie. Spróbuj jak nie wierzysz. W javie nie ma np. dzidziczenia wielokrotnego, co nie znaczy, ze nie ma dziedziczenia. W PHP przeciazysz metody statyczne. Nie wierzysz? Sprawdz. Tak wiem.. zaraz mi napiszesz, ze lipne to - ale to nie jest cecha metod statycznych. One wykonywane sa w kontekscie klasy - znaczy sa klasowe. Tak sie nazywaja w UML, a on bazuje na Javie i zapewniam - metoda klasowa zamodelowana w UML bedzie zrealizowana jako statyczna w Javie. Jesli chodzi o realizacje (w pythonie, jak rozumiem, klasa to de facto instancja klasy klasy, wiec odpalenie metody klasowej odpala ja w kontekscie obiektu klasy - jesli nie to musze doczytac) to nie jest to wazne na poziomie abstrakcji. Klopot w tym, ze kazdy jezyk chce byc trendy i wprowadza udziwnione nazwy (vide Scala), uzywa nazw alternatywnych (vide: funkcja, subroutine, def), modyfikuje wlasnosci znanych juz elementow programowania albo uzywa nazw w innych kontekscie (@staticmethod). Z tego powstaja potem spory jak ten - bo to co sie nazywa tak w pythonie inaczej nazywa sie w javie a dziala tez nieco inaczej, bo sam jezyk jest inny. Ale to jest raczej szczegol (albo ogol?) implementacyjny, koncepcyjny dot. konkretnego jezyka i jego mozliwosci a nie tego co robi metoda statyczna. Podazajac wstecz, w historii, mozemy mowic o tym, ze zmienne statyczne to jeszcze cos innego niz w javie... > > > Chcesz porozmawiac o kreacjonizmie? ;> > > Nie radzę, opiekuję się portalem creationism.org.pl ;) ..i biblia.apologetyka.com też, z tego co pamiętam ;) Dlatego wlasnie to napisalem, odnosnie opierania sie na wierze ;) > > >> Klasy abstrakcyjne są do bani, bo nie można dziedziczyć po kilku > >> klasach abstrakcyjnych. To duże ograniczenie. > > > To nie jest cecha klas abstrakcyjnych, tylko realizacji przez jezyk. W > > Pythonie mozna chyba? > > W Pythonie nie ma przecież klas abstrakcyjnych. :) > Tak? A takie ABC to co jest? Gdybym byl zlosliwy, tobym Cie sparafrazowal i napisal: "I Ty sie znasz na pythonie?", ale nie napisze :P
Technical Details
Message-ID:
<36b1e998-63ea-4bb3-a0fb-ca38004a1105@j4g2000yqe.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!feed.news.interia.pl!news.cyf-kr.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!lublin.pl!uw.edu.pl!newsgate.cistron.nl!newsgate.news.xs4all.nl!194.109.133.84.MISMATCH!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!feeder.news-service.com!feeder2.cambriumusenet.nl!feed.tweaknews.nl!postnews.google.com!j4g2000yqe.googlegroups.com!not-for-mailReferences:
<h83in7$rl3$1@inews.gazeta.pl> <b9dc7116-39db-474f-9282-8862b3f1cad2@d5g2000yqm.googlegroups.com> <a501db87-9ccf-4694-a8f8-330a67cdc839@15g2000yqy.googlegroups.com> <7aa62383-88c2-4138-89d6-594112504075@g27g2000yqn.googlegroups.com> <op.u2nhqrhyeaqjf2@macbook-pro-15-zbiru.local> <97ad13b9-95bf-4c61-8a1b-59c7c57e8499@s31g2000yqs.googlegroups.com> <op.u2oi93ceeaqjf2@macbook-pro-15-zbiru.local> <12b7fbaa-206c-4b39-8868-4e3b96eea704@37g2000yqm.googlegroups.com> <op.u2p83sqyeaqjf2@macbook-pro-15-zbiru.local> <c3247d6d-5199-4c45-9825-772387effd7b@f16g2000yqm.googlegroups.com> <op.u2quicq2eaqjf2@macbook-pro-15-zbiru.local> <0d2efb92-6837-425f-b45e-0d9a8575fc99@v36g2000yqv.googlegroups.com> <op.u2revzrfeaqjf2@macbook-pro-15-zbiru.local>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!feed.news.interia.pl!news.cyf-kr.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!lublin.pl!uw.edu.pl!newsgate.cistron.nl!newsgate.news.xs4all.nl!194.109.133.84.MISMATCH!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!feeder.news-service.com!feeder2.cambriumusenet.nl!feed.tweaknews.nl!postnews.google.com!j4g2000yqe.googlegroups.com!not-for-mail From: pakalk <pakalk@gmail.com> Newsgroups: pl.comp.lang.python Subject: Re: python vs php - potrzebne argumenty Date: Mon, 2 Nov 2009 08:47:52 -0800 (PST) Organization: http://groups.google.com Lines: 116 Message-ID: <36b1e998-63ea-4bb3-a0fb-ca38004a1105@j4g2000yqe.googlegroups.com> References: <h83in7$rl3$1@inews.gazeta.pl> <b9dc7116-39db-474f-9282-8862b3f1cad2@d5g2000yqm.googlegroups.com> <a501db87-9ccf-4694-a8f8-330a67cdc839@15g2000yqy.googlegroups.com> <7aa62383-88c2-4138-89d6-594112504075@g27g2000yqn.googlegroups.com> <op.u2nhqrhyeaqjf2@macbook-pro-15-zbiru.local> <97ad13b9-95bf-4c61-8a1b-59c7c57e8499@s31g2000yqs.googlegroups.com> <op.u2oi93ceeaqjf2@macbook-pro-15-zbiru.local> <12b7fbaa-206c-4b39-8868-4e3b96eea704@37g2000yqm.googlegroups.com> <op.u2p83sqyeaqjf2@macbook-pro-15-zbiru.local> <c3247d6d-5199-4c45-9825-772387effd7b@f16g2000yqm.googlegroups.com> <op.u2quicq2eaqjf2@macbook-pro-15-zbiru.local> <0d2efb92-6837-425f-b45e-0d9a8575fc99@v36g2000yqv.googlegroups.com> <op.u2revzrfeaqjf2@macbook-pro-15-zbiru.local> NNTP-Posting-Host: 83.4.171.244 Mime-Version: 1.0 X-Trace: posting.google.com 1257180472 3467 127.0.0.1 (2 Nov 2009 16:47:52 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 2 Nov 2009 16:47:52 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: j4g2000yqe.googlegroups.com; posting-host=83.4.171.244; posting-account=rLTIYAoAAAAC0UY184o3dcMgnRpikGCw User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.27 Safari/532.0,gzip(gfe),gzip(gfe) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit