Python, die etwas andere Scriptsprache

in

Mein erster Artikel zu Python hier im Blog, was wohl daran liegt, dass ich erst seit kurzem mit Python arbeite.

Bisher habe ich neben einigen Ausflügen in die Javawelt und auch ein paar Gehversuchen im C++ Umfeld eigentlich die meiste Zeit in PHP programmiert.
 

Und nun also Python ... zuerst mal, warum dieser Titel, die andere Scriptsprache.

Im Gegensatz zu PHP läuft Python stateful in einem echten Applikationserver, erlaubt persistente HTTP-Verbindungen und auch echte parallele Verarbeitung und hat sicher auch noch sehr viel mehr Vorteile im Gegensatz zu PHP, die ich noch gar nicht alle kenne.
Ich will an dieser Stelle natürlich keine Grundsatzdiskussion starten über die Vor- und Nachteile von Python vs. PHP, ich möchte nur meine Entscheidung mit Python zu beginnen, begründen, da meine aktuellen Projekte mit Python einfach besser zu bewältigen sind, als mit PHP.

Worum geht es also genau:

Es soll eine Art Datensammler entwickelt werden, der verschiedenste Protokolle beherrscht (REST, SOAP, etc.) und möglichst parallel zB. von einem SOAP-Server Daten abholt. (Ein Beispiel wären hier Profildaten von 1 mio. Usern, die parallel empfangen werden müssen). Da PHP nun aber eine sequentiell arbeitende Sprache ist und zB. beim Aufbau einer SOAP-Connection, bei jedem Aufruf das SOAP-Object neu instanziert (ja ich weiß es gibt wsse soap, aber das ist nicht das selbe wie in python oder java) und da PHP keine persistenten HTTP-Verbindungen erlaubt, sondern bei jedem Aufruf an den SOAP Server die Verbindung auch neu instanziert, muss für diese Art Anwendungsfall (einen Datensammler) überlegt werden, ob es nicht bessere Ansätze gibt, als das was PHP zu bieten hat.

Wunderbar geeignet für eine solche Aufgabe wäre Erlang, und mit iBrowse gibt es da auch schon etwas, was in die richtige Richtung geht, jedoch stehe ich in Bezug auf Erlang noch sowas von am Anfang, :) dass ich sowas wie iBrowse zwar benutzen, aber leider momentan noch nicht komplett verstehen kann.

Deshalb also Python, dass neben den hier schon aufgezählten Vorteilen natürlich noch weitere Dinge bietet, die mir besser gefallen, als in PHP.
Denkt man nämlich die Idee eines Datensammlers weiter (zB. Profildaten) so sollen diese nun auch in der eigenen Anwendung genutzt werden (Stichwort Communities) und da nun der Datensammler selbst schon Python spricht, warum nicht auch gleich die darüberliegende Schicht (also das Model) in Python programmieren. Und wenn wir schon dabei sind könnte unser Controller doch auch gleich in Python sein. Und um die Sache abzurunden, nehmen wir für die Views XSLT, dass wir durch unser Backend mit XML befüllen.

Voilá, fertig wäre ein hochperformantes Community-System, welches mit verhältnismässig wenig Hardware eine Menge Anfragen abarbeiten könnte (denn auch die gute Performance ist ein Vorteil von Python) und welches sich aus verschiedensten Quellen und Systemen Informationen zusammensuchen könnte.

Doch grau ist alle Theorie, noch stehe ich ganz am Anfang und die erste Aufgabe wird es sein, den beschriebenen Datensammler mit Python zu implementieren. Einige Informationsquellen zu diesem Thema, werde ich im nächsten Beitrag veröffentlichen, am Ende dieses Artikels gibt es erstmal einige Einstiegslinks und Literaturempfehlungen zu Python.

Ein Satz noch zum Schluss, nicht dass man mich falsch versteht, ich mag PHP und werde auch weiterhin Projekte damit umsetzen, jedoch hilft der Blick über den Tellerrand ungemein, und ein Einstieg in die Pythonwelt, hilft mir sicherlich auch beim Umsetzen von PHP Projekten weiter, denn man spricht ja auch nicht nur eine Sprache, sondern lernt schon in der Schule die verschiedensten Fremdsprachen (in meinem Fall Englisch, Französisch, Russisch) kennen.

Links zum Einstieg in Python:

http://python.org/

http://diveintopython.org/toc/index.html

http://openbook.galileocomputing.de/python/

Literatur zu Python

Folgendes Buch hilft mir gerade den Einstieg in Python zu finden und mein erster Eindruck von diesem Buch ist absolut positiv!

Hier gibts das Buch bei Amazon: 

Das Python-Praxisbuch: Der große Profi-Leitfaden für Programmierer

Trackback URL for this post:

http://www.sweo.de/trackback/565

Kommentar hinzufügen

Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt.
  • Internet- und E-Mail-Adressen werden automatisch umgewandelt.
  • Zulässige HTML-Tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Zeilen und Absätze werden automatisch erzeugt.

Weitere Informationen über Formatierungsoptionen