Article View: pl.comp.lang.python
Article #26771Re: python vs php - potrzebne argumenty
From: Marek Wywiał
Date: Mon, 02 Nov 2009 08:37
Date: Mon, 02 Nov 2009 08:37
94 lines
5306 bytes
5306 bytes
On 2 Lis, 09:25, pakalk <pak...@gmail.com> wrote: > On 2 Lis, 08:51, Marek Wywiał <onj...@gmail.com> wrote: > > > > > > > On 2 Lis, 08:40, pakalk <pak...@gmail.com> wrote: > > > > On Nov 2, 12:28 am, "Jaroslaw Zabiello" <use...@onet.eu> wrote: > > > > > Dnia 01-11-2009 o 20:00:29 pakalk <pak...@gmail.com> napisał(a): > > > > > > Poza tym, to nie ma nic takiego jak protected, przynajmniej w Py2.6 - > > > > > mylę się? > > > > > > class ProtTest: > > > > > _x = "Zmienna chroniona?" > > > > > > def _foo( self ): > > > > > return "Funkcja chroniona?" > > > > > > o = ProtTest() > > > > > > print o._x > > > > > print o._foo() > > > > > Tylko, że tak będzie pisał tylko ktoś kto nie ma pojęcia o Pythonie. Każdy > > > > pythonista dobrze wie, że nie należy wywoływać tak nazwanych atrybutów > > > > jakby to były atrybuty publiczne. > > > > Otóż to właśnie jest brak wsparcia ze strony języka. Już zresztą > > > pisałem. > > > Wydaje mi się, że mylisz pojęcie ze słowem kluczowym. To, że > > właściwość > > jest protected to pojęcie, a słowo kluczowe 'protected' lub '__' to > > już kwestia użytej implementacji. > > __ to private a nie protected. I nic nie myle. > > > > > Podobnie myśląć, Python nie ma wsparcia dla funkcji bo nie ma słowa > > kluczowego 'function' tylko 'def'. > > Nie. > > > Problem z rozumieniem obiektowości i innych pojęć wynika z > > implementacji od której zaczyna się naukę. > > Jakies 4-5 lat pewnie też bym się upierał przy 'protected' gdyż słowo > > kluczowe i pojęcie było dla mnie tym samym. > > Znowu mam ochote zacytowac House'a. Cytuj, House nazywa idiotami wszystkich, którzy się z nim nie zgadzają, nawet jeśli on sam nie ma racji, gdyż widzi tylko swój światek. Ale on po fakcie przyznaje się, że się mylił. Też docierasz do tego etapu? Z drugiej strony, jeżeli w dyskusji o programowaniu nie jesteś w stanie zacytować żadnego autorytetu z tej dziedziny, tylko sięgasz do serialu? > > Czytales co pisalem o _? Czy sobie nie zadales trudu? Czy gdzies > napisalem, ze ma pisac "protected"? Niech i pisze "unprotected", ale > niech dziala, to wtedy bedzie wsparcie jezyka. Nadal piszesz o działaniu w konkretnej implementacji tego wzorca w Java/php. Czy dla dekoratora też musi być specjalne wsparcie w języku by używać tego wzorca? W pythonie masz uproszczenie w postaci @dekorator, czyli java i php nie wspierają dekoratorów na poziomie języka? Nie muszą, bo jest to wzorzec, który realizujesz przy pomocy dostarczonych elementów języka. Więc protected i _ jest tym samym tak samo jak function i def. > > > > > Po poznaniu lepiej pythona i kilku innych odmiennych języków zacząłem > > odróżniać jedno od drugiego. > > Gratuluje, ze dopiero wtedy. Masz sie czym chwalic. Mam, ty jeszcze nie zacząłeś czytając Twoje wypowiedzi oraz porównując je z pozostałymi dyskutującymi osobami. Także jako jedyny nie jesteś też w stanie podpisać się pod własnymi wypowiedziami, czyli siebie samego także nie traktujesz jako wiarygodne źródło.
Technical Details
Message-ID:
<db7f2c54-4c73-443f-9d58-c3ee4e94f8d2@m38g2000yqd.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.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!postnews.google.com!m38g2000yqd.googlegroups.com!not-for-mailReferences:
<h83in7$rl3$1@inews.gazeta.pl> <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> <819ec9ea-fb64-4947-b8e3-08492d688c1a@d5g2000yqm.googlegroups.com> <op.u2qotzozeaqjf2@macbook-pro-15-zbiru.local> <808b5301-c6c7-4203-bc67-6cff86a05aae@m38g2000yqd.googlegroups.com> <2f9b059a-6c07-4afd-9a4d-0c4b1f2dbc40@j24g2000yqa.googlegroups.com> <f3daac73-0f80-4a88-875a-189179867549@d10g2000yqh.googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.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!postnews.google.com!m38g2000yqd.googlegroups.com!not-for-mail From: Marek Wywiał <onjinx@gmail.com> Newsgroups: pl.comp.lang.python Subject: Re: python vs php - potrzebne argumenty Date: Mon, 2 Nov 2009 00:37:42 -0800 (PST) Organization: http://groups.google.com Lines: 106 Message-ID: <db7f2c54-4c73-443f-9d58-c3ee4e94f8d2@m38g2000yqd.googlegroups.com> References: <h83in7$rl3$1@inews.gazeta.pl> <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> <819ec9ea-fb64-4947-b8e3-08492d688c1a@d5g2000yqm.googlegroups.com> <op.u2qotzozeaqjf2@macbook-pro-15-zbiru.local> <808b5301-c6c7-4203-bc67-6cff86a05aae@m38g2000yqd.googlegroups.com> <2f9b059a-6c07-4afd-9a4d-0c4b1f2dbc40@j24g2000yqa.googlegroups.com> <f3daac73-0f80-4a88-875a-189179867549@d10g2000yqh.googlegroups.com> NNTP-Posting-Host: 83.238.76.169 Mime-Version: 1.0 X-Trace: posting.google.com 1257151062 30407 127.0.0.1 (2 Nov 2009 08:37:42 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 2 Nov 2009 08:37:42 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: m38g2000yqd.googlegroups.com; posting-host=83.238.76.169; posting-account=eUslOwoAAABzJHUPZYYTJJROK5AqCeD5 User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/532.3 (KHTML, like Gecko) Chrome/4.0.223.11 Safari/532.3,gzip(gfe),gzip(gfe) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit