![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 1 Dołączył: 2.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Interesuje mnie temat Python a dokładnie tworzenie aplikacji webowej. Niestety nigdy nie pisałem w tym języku. Dotychczasowo programowałem w PHP z wykorzystaniem Symfony 1.1. Bardzo mi się podoba pisanie programu w tym frameworku. Ale z wydajnością jest trochę kiepsko. Tak więc interesuję się Django, które jest szybsze od symfony (tak myślę z tego co czytałem). Ale mam kilka pytań:
Ten post edytował kaniagandzowski 29.10.2008, 13:31:47 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 5 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Sam programuje w obu frameworkach wiec mysle ze najlatwiej bedzie mi sie utosunkowac ;)
1. Django nie posiada systemu pluginow - django posiada szereg aplikacji napisanych przez innych uzytkownikow ktore mozemy dolaczyc do swojej aplikacji. Zasada dzialania jest inna niz pluginow w symfony. Dodatkowo mozem posluzyc sie snippetami napisanymi przez innych programistow a udostepnionymi na http://www.djangosnippets.org/ 1a. RSS, CMS i wiele innych czesto wykorzystywanych elementow jest czescia frameworka django ;) 2. Django samo w sobie nie wspiera zadnej biblioteki JS. DDeveloperzy daja programista wybor (i slusznie moim zdaniem) co do tego ktory framework zastosuja. Jezeli zas chcesz latwo bez zadnego javascriptu pisac strony - mozesz skorzystac z ktoregos z dostepnych rozwiazan: http://code.djangoproject.com/wiki/AJAX 3. Szybkosc aplikacji zalezy od jej napisania ;) - mozna napisac zarowno szybka aplikacje w symfony jak i wolna w django - wszystko zalezy od indywidualnych zdolnosci programisty ;). Aczkolwiek imo sposob dzialania django pozwala na napisanie szybszych aplikacji niz symfony (ale nie wszczynajmy flame) 4. Python, python i jeszcze raz python. Wersja 3k jest caly czas rozwojowa i wprowadza wiele zmian. Wiekszosc aplikacji pisanych jest pod pythona 2.4+ wiec raczej na tej wersji bym sie skupil. I nie, nie wystarczy poznac pdostaw pythona zeby pisac aplikacje w django. Muisz poznac filozofie pisania aplikacji pythonowych zeby "phpway" nie utrudnial Ci pisania programow. 5. python to jezyk skryptowy - jak chcesz uruchamiac aplikacje bez kodu zrodlowego ;) Na twoim miejscu raczej skupil bym sie na doskonaleniu symfony i PHP a dopiero pozniej myslal nad przesiadka na inny framework. OTBTW: czy tylko ja to widze czy coraz wiecej osob probuje pisac aplikacje we frameworkach zamiast jezykach? Coraz wiecej osob lapie sie za frameworki nie znajac podstaw a potem narzeka ze cos tzreba robic naokolo albo cos jest szybsze / wolniejsze... Dziwne to czasy nastaly ;) Ten post edytował occulkot 30.10.2008, 11:06:17 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 31 Dołączył: 13.11.2006 Skąd: się znamy? Ostrzeżenie: (0%) ![]() ![]() |
Ja tylko wtrące, że bardzo nie podoba mi biblioteka XAJAX i odradzałbym jej stosowanie. Generuje brzydki inwazyjny kod i moim zdaniem ogranicza tylko możliwości programiście.
Nie wiem czemu niektórzy tak bardzo bronią się przed JS. To bardzo potężny język a dzięki jQuery praca na dokumencie staje się bardzo przyjemna. Dzięki pluginowi jQuery Form podpięcie formularza czy linka pod AJAX jest banalne. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 5 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czemu niektórzy tak bardzo bronią się przed JS. To bardzo potężny język a dzięki jQuery praca na dokumencie staje się bardzo przyjemna. Dzięki pluginowi jQuery Form podpięcie formularza czy linka pod AJAX jest banalne. sam korzystam z jquery - ale bardziej na zasadzie setupu na strone. Strona musi dzialac bez javascriptu - ale jezeli uzytkownik ma wlaczony wowczas setup odstawia reszte (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Ja się nauczyłem Prototype z kodu generowanego przez helpery SF (IMG:http://forum.php.pl/style_emoticons/default/laugh.gif)
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 640 Pomógł: 44 Dołączył: 8.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Ja swego czasu wybrałem Django i nie żałuję (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Zalety to - ekstremalnie prosty w użyciu ORM + Modele (a zarazem funkcjonalne), generowany automatycznie Panel Admina, bardzo dobra dokumentacja, kompaktowa budowa (wszystko jest w Django, nie trzeba sklejać go z n-elementów) itp. Nie podoba mi się tylko trochę obsługa formularzy (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Wybierając Django należy liczyć się że to nie jest narzędzie do robienia masowych skrypcików, czy też zleceń dla "prostych" klientów (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) A to ze względu na inny sposób hostingu projektów Django od skryptów PHP. Używając Pythona ma się też tą zaletę iż jest to język wszechstronny i można robić więcej niż tylko web. Ten post edytował Riklaunim 30.10.2008, 16:21:23 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 418 Pomógł: 8 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
3. Szybkosc aplikacji zalezy od jej napisania (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) - mozna napisac zarowno szybka aplikacje w symfony jak i wolna w django - wszystko zalezy od indywidualnych zdolnosci programisty (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Aczkolwiek imo sposob dzialania django pozwala na napisanie szybszych aplikacji niz symfony (ale nie wszczynajmy flame) Warto zauważyć, że Python jest de facto szybszy niż PHP. Poza tym podobno od Django lepszy jest Pylons, aczkolwiek cięższy do nauki. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 640 Pomógł: 44 Dołączył: 8.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Poza tym podobno od Django lepszy jest Pylons, aczkolwiek cięższy do nauki. Podobno jest szybszy, podobno ma więcej możliwości bo można sobie wybrać ORMa, system szablonów itd, podobno jest thread-safe, podobno to framework dla prawdziwych programistów, a nie dla script-kiddies jak django... Takie opinie można wypatrzeć na różnych blogach, ale realnie patrząc nie ma żadnej sensownej różnicy wydajności, czy też jakości. Źródłem takich różnych opinii są programiści, którzy na komputerze z 4GB Ram i 2 rdzeniowym procesorem siedzą na prawie gołych Xach z terminalem i monitorem zasobów, żeby przypadkiem nie zamulić systemu o 10 dodatkowych MB RAMu. Osoby lubiące składać sobie frameworka w stylu ZF pewnie polubią bardziej pylons. Osoby chcące przystąpić od razu do działania - Django. Frameworki te mają różne nisze i żaden z nich nie jest od tak lepszy od drugiego. W projektach, nad którymi pracuję Django jest bezkonkurencyjny (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) (ogólnie operowanie na danych, generowanie zestawień HTML/PDF, zarządzanie kolekcjami obiektów przez PA Django itp.) |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 418 Pomógł: 8 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Podobno jest szybszy, podobno ma więcej możliwości bo można sobie wybrać ORMa, system szablonów itd, podobno jest thread-safe, podobno to framework dla prawdziwych programistów, a nie dla script-kiddies jak django... Takie ploty chodzą... (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 113 Pomógł: 5 Dołączył: 12.09.2006 Skąd: Pruszków/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Tak zapytam sie praktykow - jak wygladaja zagadnienia hostowania FW Pythona? O ile ZF i Symphony da sie dosc latwo zainstalowac i uzytkowac na wiekszosci hostingow, to jak to jest z Django i Pylonsami?
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 640 Pomógł: 44 Dołączył: 8.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Hosting musi mieć w przypadku Apache - mod_python, lub mod_wsgi lub też mod_fcgid. Dla Nginxa - wbudowany moduł FastCGI lub dodatkowy mod_wsgi. Dla Lighttpd - FastCGI lub SCGI, Cherokee - wbudowana obsługa SCGI/FastCGI.
W praktyce musi to byś hosting, gdzie możesz podać własną konfigurację serwera. Na http://www.webfaction.com Dostajesz własnego apache per aplikacja, którego sobie dowolnie konfigurujesz (sprowadza się do podania konfiga dla aplikacji) i odpalasz, a on zacznie współdziałać z głównym apache na serwerze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Na http://megiteam.pl/ wyklikali dla Nginxa interfejs www, oraz "automatyczną" konfigurację wrzucanych projektów Django/Reszta. Na Google App Engine http://code.google.com/appengine/ możesz stosować każdy framework pythona zgodny z WSGI (czyli jakieś 99,99% z nich), lecz nie ma tam relacyjnej bazy danych, tylko Datastore, z którym gada się inaczej (przez co wypadają ORMy Django, SQLAlchemy itd.), lecz masz hosting, który raczej darmowych limitów nie przekroczy (chyba że to będzie NK2). Hosting tego typu projektów pythonowych jest innych niż PHP, gdyż nie jest to wywoływanie poszczególnych plików, tylko wywoływanie obiektu, który na podstawie nadesłanych danych zwraca określoną odpowiedź (np. mapując żądaną ścieżkę na konkretny widok) (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 5 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Takie opinie można wypatrzeć na różnych blogach, ale realnie patrząc nie ma żadnej sensownej różnicy wydajności, czy też jakości. Źródłem takich różnych opinii są programiści, którzy na komputerze z 4GB Ram i 2 rdzeniowym procesorem siedzą na prawie gołych Xach z terminalem i monitorem zasobów, żeby przypadkiem nie zamulić systemu o 10 dodatkowych MB RAMu. Osoby lubiące składać sobie frameworka w stylu ZF pewnie polubią bardziej pylons. Osoby chcące przystąpić od razu do działania - Django. Frameworki te mają różne nisze i żaden z nich nie jest od tak lepszy od drugiego. W projektach, nad którymi pracuję Django jest bezkonkurencyjny (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) (ogólnie operowanie na danych, generowanie zestawień HTML/PDF, zarządzanie kolekcjami obiektów przez PA Django itp.) Ja wlasnie nigdy nie mialem czasu bawic sie buzlami w pylonsach - z reszta - nei widzialem tam ejszcze niczego w stylu panelu admina z django - a nie oszukujmy sie - to 30% tworzenia aplikacji |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 1 012 Pomógł: 109 Dołączył: 26.09.2003 Skąd: nexis.pl Ostrzeżenie: (0%) ![]() ![]() |
A znacie więcej ofert hostingowych z Polski, które wspierają Django? Np. na home.pl jest obsługa Python'a. Czy to jednoznaczne z obsługą Django?
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%) ![]() ![]() |
Aplikacji w Django nie mozna uruchomic na home.pl - m.in dlatego wykupilem ten hosting ostatnio i sie srogo zawiodlem.
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Python ma sam w sobie wiele zalet, więc i frameworki napisane w tym języku na tym zyskują. Czy ORM django jest tak ekstremalnie prosty to bym dyskutował (ale ja w ogóle jestem niechętny ORM-om), podobnie rzecz się ma z jakością dokumentacji. Poznanie django wiąże się z wysiłkiem zwłaszcza dla kogoś kto zna Symfony, ale nie ma pojęcia o Pythonie. Nie mniej stoję na stanowisku, że warto.
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 640 Pomógł: 44 Dołączył: 8.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
A znacie więcej ofert hostingowych z Polski, które wspierają Django? Np. na home.pl jest obsługa Python'a. Czy to jednoznaczne z obsługą Django? Praktycznie każdy z dostępem do shella, gdzie możesz instalować sobie co chcesz lub prawie co chcesz (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) swego czasu też testowałem itl.pl pod tym kątem, gdzie to przechodzi. Ogólnie większość Djangowców poleca WebFaction http://djangofriendly.com/hosts/ |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 04:48 |