PHP Schulung

Anwendungsdesign

Problemstellung:

  • Webanwendungen sollen in der Regel kurzfristig verfügbar sein. An Stelle von Monaten wird in Wochen gerechnet.
  • es handelt sich oft um Projekte ohne Vorbild, daraus resultierend häufige Wechsel der Anforderungen. Die fliessende Modifizierung der Anforderungsdefinition ist möglich.
  • Wandel von starren Projekten zu wachsenden, sich verändernden Lösungen.

Lösungsansatz:

  • Wieder- und Mehrfachvererbbarkeit => OOP. Bei PHP ist Objektorientierung mit einer bestimmten Abstraktionstiefe resourcenfeindlich. Die Entwicklung befindet sich oft im Widerspruch saubere Zerlegung - Geschwindigkeit
  • Es wird das "KISS"-Prinzip verwendet - "Keep it simple, stupid". Die eigenen Modul APIs werden trivial gehalten, die Namen der Funktionen sind selbsterklärend.
  • Hoher Grad an code reusage. Dies läßt sich durch eine häufige Anwendung von Bibliotheken, evtl. auch in einem Application Framework, erreichen. Diese Bibliotheken unterliegen in der Regel einem eigenen Versionsmanagement (Bsp.: PHPLIB)
  • ständiger Überblick über Status und Änderungen. Die Dokumentation muß ständig und parallel zur Softwareentwicklung vorhanden und aktuell sein (Lösung: inline documentation via PHPDoc.
  • evolutionäres Prototyping: Es wird frühzeitig ein funktionierender Prototyp entwickelt - in der Regel bereits in der ersten Woche. Prototypen werden nicht zwangsläufig verworfen, sondern es wird auf ihnen weiterentwickelt. Es wird eine hohe Kapselung der Bestandteile notwendig, um einen Austausch von Modulen schmerzlos zu überstehen.




Written & © by team@thinkphp.de Licence: OPL.