Hallo zero-one!
Willkommen im Python-Forum!
zero-one hat geschrieben:schnell kleinere Firmen Webseiten und/oder Blogs erstellen kann
Das ist zu allgemein. Was sind kleinere Firmen-Webseiten? Entscheidend ist eher, wie dynamisch die Website werden soll. Für viele sind statische HTML-Seiten und ein CGI-Skript für das Kontaktformular vollkommen ausreichend.
Ein Blog ist da ganz etwas anderes. Ein Blog ist von vorne bis hinten dynamisch. Die Daten stehen nicht in statischen HTML-Seiten, sondern meist in Datenbanken. Um "schnell" mal einen Blog zu programmieren, wirst du wahrscheinlich mit Django und Co. recht gut fahren. Django ist irgendwie voll auf Datenbank ORM fixiert. Also nichts für Leute, die lieber die Power aus Datenbanken raus holen wollen, sondern für die, die sich nicht um Datenbanken kümmern wollen, sie aber trotzdem brauchen um damit eine Web-Anwendung zu entwickeln.
Ich persönlich bin jemand, der sich von diesen AllYouWant-Komplettpaketen losgesagt hat. Ich hatte so meine Erfahrungen mit Plone und dem zugehörigen Archetypes-Framework. Einfache Dinge lassen sich mit solchen Komplettpaketen wirklich sehr schnell entwickeln. Aber so bald du etwas anpassen musst, musst du dich in die Tiefen dieser Komplettpakete einarbeiten und Hooks ansetzen um trotz eigener Änderungen, das Komplettpaket nicht auseinander fliegen zu lassen. Diese Erfahrung hat mich während der Entwicklung so stark gebremst und so viel Geld gekostet, dass ich seither lieber ein kleines Basis-Framework benutze und mir für jeden Verwendugszweck die Tools selber aussuche.
Ich verwende CherryPy als Basis-Framework. Es bietet mir die Codegrundlage für die Webentwicklung. Und entlastet mich zusätzlich in Sessionhandling und Authentifizierung. CherryPy ist voll WSGI-Kompatibel. Das bedeutet, es hält sich an diesen Standard und läuft überall dort, wo man WSGI als Webschnittstelle einsetzen kann. --> CGI, FCGI, mod_python, mod_wsgi, usw.
WSGI hat auch noch den Vorteil, dass man mehrere WSGI-Anwendungen hintereinander schalten kann. Das bedeutet, dass zuerst die eine Anwendung die Daten bekommt, diese filtern und verändern kann und dann an die nächste WSGI-Anwendung weitergibt. So kann man auch andere WSGI-Anwendungen einsetzen, die z.B. nur für das Sessionhandling, Caching, für die Komprimierung, usw. zuständig sind. Man ist nicht mehr darauf angewiesen, dass ein Framework alles kann. Man sucht sich die Spezialisten aus und verwendet die, die einem am besten passen.
Bei kleinen Frameworks wie Werkzeug oder CherryPy ist es irgendwie einfacher...
Also mein Fazit: AllYouWant-Frameworks wie z.B. Django lassen dich sehr schnell eine Anwendung entwickeln. Nur das Anpassen der Anwendung wird später schwieriger, da vieles vom Framework vorgegeben wird.
Einfachere Frameworks wie z.B. Werkzeug oder CherryPy nehmen dich am Anfang nicht so sehr an der Hand. Erste Anwendungen sind nicht so schnell fertig wie bei den Großen. Dafür gleicht sich das dann durch die gewonnene Flexibilität aus. Wenn man z.B. nicht das Framework zum Erstellen eines Formulares herangezogen hat, dann muss man sich später nicht mit dessen Einschränkungen herumschlagen.
mfg
Gerold
PS:
http://halvar.at/python/cherrypy_cheetah/
.