Facebook
Twitter
Google+
Kommentare
7

Nützliche PHP Tools

Immer wieder eine interessante Frage: Welche Tools verwendet Ihr eigentlich? Ich weiß, wenn ich hier jetzt von euch Kommentare erwarte, dann klappt das eh nicht. Ihr scheint eine schreibfaule Leserschaft zu sein. Deswegen fange ich einfach mal an, meine Tools und Frameworks zu nennen, die ich derzeit in Projekten einsetzte. Vielleicht sind ja die ein oder anderen dabei, die ihr auch verwendet. Ich habe mich dafür entschieden, die kleinen Helferchen chronologisch im Bezug auf den Softwareentwicklungsprozess anzuordnen.

  • argouml
    Wie es nun mal sein sollte kommt zuerst die Planungsphase. UML Klassendiagramme werden erstellt und vielleicht auch mal ein Ablaufdiagramm. Zum Erstellen von Klassendiagrammen verwenden wir das kostenlose Tool argouml. Obwohl das Programm die Möglichkeit besitzt aus UML PHP Klassen zu erstellen, nutzen wir dies Feature nicht, sondern programmieren vielmehr die einzelnen Klassen anhand der Diagramme nach. Alle anderen Diagramme werden mit Microsoft Visio erstellt.
  • Zend Studio
    Nach der Planungsphase geht es weiter mit der Implementierung. Wie ihr wisst ist hier verwenden wir hier das Zend Studio. Ich habe mich ja schon das ein oder andere mal darüber ausgelassen, deswegen halte ich mich hier ein wenig kürzer.
  • PHP Unit
    Das meiste, was testbar ist wird dann mit Unit Tests versehen. Dabei schreiben wir unsere Test Cases und Suiten mit PHP Unit von Sebastian Bergmann.
  • Perforce / SVN
    Ich tippe mal drauf, dass sie meisten Perforce nicht kennen, prinzipiell ist es aber ein Source Code Management Tools wie jedes andere. Ich tippe mal drauf, dass die meisten von auch CVS oder SVN verwenden. Ok, also wir haben jetzt geplant, implementiert und getestet.
  • PHPUnderControl
    Nachdem der Source Code comitted wurde springt unser Cruise Control an. Hier verwenden wir den PHP Aufsatz von Manuel Pichler PHPUnderControl. Dank dem PHP Code Sniffer, PHP Unit und ein paar selbst gebastelten Shell Skripten werden hier noch einmal die letzten Integrationsprobleme gelöst.
  • rsync
    Nachdem alles durchgetestet wurde, werden die Sourcen auf den Live Server per rsync kopiert.

So das waren die Tools, die wir momentan einsetzen um unseren Entwicklungsprozess zu unterstützen. Wahrscheinlich werde ich auf die einzelnen Punkte noch genauer eingehen, da ich denke, dass es hier noch das ein oder andere zu sagen gibt. Das werde ich aber nicht heute machen.

Über den Autor

Nils Langner

Nils Langner ist der Gründer von "the web hates me" und auch der Hauptautor. Im wahren Leben leitet er das Qualitätsmanagementteam im Gruner+Jahr-Digitalbereich und ist somit für Seiten wie stern.de, eltern.de und gala.de aus Qualitätssicht verantwortlich. Nils schreibt seit den Anfängen von phphatesme, welches er ebenfalls gegründet hat, nicht nur für diverse Blogs, sondern auch für Fachmagazine, wie das PHP Magazin, die t3n, die c't oder die iX. Nebenbei ist er noch ein gern gesehener Sprecher auf Konferenzen. Herr Langner schreibt die Texte über sich gerne in der dritten Form.
Kommentare

7 Comments

  1. Ich möchte dir gerne mal ein Kommentar da lassen, nicht das du dich einsam fühlst 🙂
    UML habe ich für mich in PHP persönlich noch nicht entdeckt, da die meisten Projekte an denen ich gearbeitet habe bereits seit langem in „mache“ sind und das erstellen von UML Diagrammen nicht etabliert.
    PHP-Unit steht bei mir schon etwas länger auf der liste leider noch nicht erledigter Dinge, vielleicht sollte ich mir heute dazu mal Zeit nehmen.

    Vielen dank für Cruise Control/PHPUnderControl, über das Tool bin ich noch nicht gestolpert.

    Wir lesen uns, Salz

    Reply
  2. Na dann ist ja heute schon Weihnachten der Zweite Kommentar ;-). Wieso setzt ihr nicht statt rsync -> svn checkout an? Oder bietet das nicht „Perforce“ an?

    Gruß Daim

    Reply
  3. Prinzipiell ist der Perforce Sync natürlich der bessere Weg. Das Problem ist nur, dass unser Server in einer DMZ steht, auf die nicht gesynced werden kann. Deswegen machen wir einen Checkout in ein spezielles Verzeichnis, dass wir dann per rsync auf den Server kopieren.

    Reply
  4. Achso, klar:

    „Am ersten Tag erschuf der Software-Entwickler das Repository“
    Die ArgoUML-Files müssen ja wo rein…

    Geht’s euch nicht auch so? Ohne Repository kein Projekt?

    Timo

    Reply
  5. Also ich verwende natürlich immernoch einen ganzen Sack voller PEAR-Klassen: XML_Serializer, Mail, Mail_Mime, Spreadsheet_Excel_Writer. Siehe (http://pear.php.net/)

    Außerdem noch die welt-besten Libraries (und damit wollte ich nur einen kleinen Glaubenskrieg antreten) von PHP Application Tools (http://www.php-tools.net/). Da wären hauptsächlich patSession, patTemplate und patForms.

    Als Testing-Framework empfehle ich SimpleTest http://simpletest.org/, das ist auf jeden Fall dem PEAR Packet PHPUnit vorzuziehen. Dann muss ich natürlich noch ein wenig Eigenwerbung für FIT (http://fit.c2.com/) machen. Jenes Framework gibt es nämlich auch PEAR Paket: Testing_FIT (http://pear.php.net/package/Testing_FIT).

    Viel Spaß am Gerät, gERD

    Reply
  6. Hi Gerd, wenn du willst, kannst du gerne einen Beitrag schreiben, warum PAT* die besten Tools der Welt sind oder warum SimpleTest PHPUnit schlägt.

    Reply

Leave a Comment.

Link erfolgreich vorgeschlagen.

Vielen Dank, dass du einen Link vorgeschlagen hast. Wir werden ihn sobald wie möglich prüfen. Schließen