Article View: pl.comp.lang.python
Article #26504Re: python vs php - potrzebne argumenty
From: Wojciech Malinowski
Date: Mon, 07 Sep 2009 23:16
Date: Mon, 07 Sep 2009 23:16
93 lines
4434 bytes
4434 bytes
szemuk@WYTNIJ.gazeta.pl wrote: > Witam. > > Powstaje pewien projekt webowy i toczy się dyskusja o technologii. > Kandydatami są django oraz frameworki phpowe. > Znam django i osobiście nie mam co do niego wątpliwości > a w napisanie czytelnego i zarządzalnego kodu w php nie wierzę > - ale potrzebuję przedstawić to w postaci konkretnych argumentów, > obejmujących funkcjonalność, jakość frameworków i wszelkie inne > czynniki mające znaczenie. Wszelkie wypowiedzi, także krytyczne, > mile widziane. Osobiście nie znoszę PHP, a bardzo lubię Pythona. Uważam jednak, że Twoje argumenty są słabe, i że nie przygotowałeś się dobrze do argumentacji. > - sensownie zaprojektowane frameworki phpowe są w nowością No i co? O Pythonie każdy może powiedzieć to samo. Czy sensowny jest Twoim zdaniem Django, czy Pylons, czy Zope? > i nie umywają się dojrzałością, dokumentacją i ilością dodatków do django Dokumentacja PHP na php.net (z komentarzami) jest jedną z najlepszych jakie widziałem. O dojrzałości samego PHP w zastosowaniach webowych chyba nie muszę wspominać, a co do ilości dodatków to dam sobie rękę uciąć, że różnorakich bibliotek webowych jest więcej w PHP niż Pythonie. > - djangowy orm zjada phpowe wymysły na śniadanie O ile dobrze pamiętam to Djangowy ORM to zwykły Active Record. W czym jest taki szczególny? > - django ma panel admina A co go nie ma? > - python jako język bardziej zwięzły generuje krótszy, czytelniejszy i przez > to łatwiejszy w utrzymaniu kod Jedyny moim zdaniem w miarę sensowny argument. > - python ma bibliotekę standardową która jest zaprojektowana obiektowo > i korzysta z mechanizmu wyjątków, czego chyba nie da sie powiedzieć o php Ciężko powiedzieć, że biblioteka standardowa została w ogóle w Pythonie (przynajmniej 2.x) *zaprojektowana*. Ciężko też wykazać jak obiektowość wpływa na "lepszość" biblioteki, a nawet jak już wykażesz to musisz potem tłumaczyć czemu pisze się len([]) a nie [].length(). Z argumentem o wyjątkach się zgadzam. > - historia bezpieczeństwa php jest fatalna W ogóle nie śledzę więc się nie wypowiem. Jeżeli chcesz cokolwiek zmienić to zapomnij na chwilę o powyższych argumentach. Skup się najpierw na tym co jest celem projektu, na tym kto decyduje o użyciu danej technologii oraz jakie są *konkretne* alternatywy. 1. Cele Wypunktuj je 2. Osoba decyzyjna Odpowiedz sobie na pytanie - kim jest, czego oczekuje od wybranej technologii? Pewnie ważne będą pieniądze pod wieloma postaciami - nie zapomnij o nich. 3. Alternatywne technologie Dowiedz się jakie są alternatywy - konkretne nazwy frameworków - a nie po prostu "frameworki PHPowe". Traktuj każdy z nich z osobna podczas punktacji. 4. Punktacja Połącz cele z punktu 1 z oczekiwaniami z punktu 2 i zamień na konkretne cechy języka/frameworka - to będą wiersze tabeli Do frameworków z punktu 3 dołącz Django - to będą kolumny Na przecięciu wpisuj *w miarę obiektywnie* punkty 1-10. Dodaj ostatni wiersz nazwany "Moja rekomendacja" i daj Django 10 a reszcie 0. Podlicz punkty. Jeśli Django wygrało pokaż wszystkim tabelkę - z czymś takim nie będzie jak dyskutować. Jeżeli Django przegrało to się nie upieraj i użyj najlepszego narzędzia dla danego problemu albo znajdź sobie inny projekt. PS. Przedstawiając swoje propozycje używaj tzw. języka korzyści. Dowiedz się czym się różni korzyść od cechy. Pozdrawiam, Wojciech Malinowski
Technical Details
Message-ID:
<h8447e$mg9$1@inews.gazeta.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailReferences:
<h83in7$rl3$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: Wojciech Malinowski <virrar@wp.pl> Newsgroups: pl.comp.lang.python Subject: Re: python vs php - potrzebne argumenty Date: Tue, 08 Sep 2009 01:16:05 +0200 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 93 Message-ID: <h8447e$mg9$1@inews.gazeta.pl> References: <h83in7$rl3$1@inews.gazeta.pl> NNTP-Posting-Host: 87-205-103-32.adsl.inetia.pl Mime-Version: 1.0 X-Trace: inews.gazeta.pl 1252365358 23049 87.205.103.32 (7 Sep 2009 23:15:58 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Mon, 7 Sep 2009 23:15:58 +0000 (UTC) X-User: virrar In-Reply-To: <h83in7$rl3$1@inews.gazeta.pl> User-Agent: Thunderbird 2.0.0.22 (X11/20090726) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit