41 Stimmen

Welche PHP-Anwendungsdesigns/Gestaltungsmuster verwenden Sie?

Bitte teilen Sie mir Ihre Lieblingsanwendungsdesigns / Entwurfsmuster für die Verwendung in PHP mit. Einige Dinge, die ich gerne wissen würde:

  • Wie Ihre Mappen gestaltet sind
  • Wie Sie die Objektoritentation in Ihren PHP-Anwendungen verwenden
  • Haben Sie eine Standardmethode für den Umgang mit CRUD, Paginierung oder anderen allgemeinen Aufgaben?
  • Wie vermeiden Sie die Verwendung von sich wiederholendem Code? Wie gehen Sie mit Bibliotheken/gemeinsamem Code usw. um?
  • Wie können Sie Ihren Code eleganter gestalten?

Sie müssen nicht alle Fragen beantworten, die Beantwortung einer oder mehrerer Fragen ist jedoch hilfreich.

Der Grund, warum ich das frage, ist, weil ich sehr müde bin, sich wiederholenden, hässlichen Code in PHP zu schreiben, und ich möchte ein kleines Framework für meine freiberuflichen Projekte erstellen, das die Programmierung erleichtert und mich auf die anspruchsvollen/geschäftlichen Aufgaben konzentrieren lässt, anstatt auf Formularvalidierung, Paginierung und die anderen banalen Tätigkeiten, die 80% der Programmierarbeit in PHP ausmachen

Alle Meinungen sind willkommen!

0 Stimmen

Wenn Sie alle Meinungen gleich gewichten, warum dann die Prämie? Darauf gibt es sicher nicht die eine, gute Antwort.

0 Stimmen

Ja, wonach suchen Sie? Ich glaube, ich verstehe Ihre Frage so, wie sie jetzt formuliert ist, aber wenn Sie ein Kopfgeld aussetzen, dann lässt mich das vermuten, dass Sie mehr wollen.

0 Stimmen

Ich suche nur nach interessanten Diskussionen. Ich werde am Ende die am besten beschriebene Antwort auswählen

2voto

vishvananda Punkte 459

Ich habe mit dem smarty Template-Engine, als ich das Mischen von Code und HTML leid war. Nachdem ich eine Weile gehackt hatte, erkannte ich, dass das Schreiben meines eigenen Frameworks nur doppelte Arbeit bedeutet.

Ich habe ein paar Projekte durchgeführt mit Joomla das eigentlich ein CMS ist, aber den Kunden eine große Kontrolle über den Inhalt gibt.

Letztendlich habe ich mich dafür entschieden, ein echtes Framework für meine Projekte zu verwenden. Ich verwende symfony das von Rails inspiriert ist und sehr gut dokumentiert ist, aber ich habe gehört cakePHP y ZendFramework sind ebenfalls sehr gut.

2voto

vartec Punkte 124396

Ich verwende Zend Framework, das ziemlich genau das Layout der Ordner und OOP (MVC-Paradigma) definiert. Für allgemeine Aufgaben, wie zum Beispiel die Paginierung, verwende ich Zend_Paginator (meine Modellklassen implementieren Zend_Paginator_Adapter_Interface ), für die Validierung verwende ich Zend_Validate Klassen usw. Dadurch kann ich mich voll und ganz auf die Geschäftslogik konzentrieren, anstatt das Rad neu zu erfinden.

2voto

Karsten Punkte 14372

使用方法 Zend-Framework y Doktrin Meine Ordnerstruktur sieht normalerweise wie folgt aus:

root
  app
    config         (db config, routing config, misc config)
    doctrine       (fixtures, migrations, generated stuff, etc)
    lib
    logs
    models         (doctrine models)
    modules        (zend mvc modules)
    bootstrap.php
  docs             (db diagrams, specs, coding standards, various docs)
  pub              (web root)
  tests
  tools            (console tools, i.e. doctrine-cli)
  vendor           (zend and doctrine libraries, preferably as svn-externals)

1voto

Gautam Punkte 2055

Ich schreibe schon seit einiger Zeit an meinen eigenen Texten herum, und jedes Mal schaffe ich es nicht, sie zu Ende zu schreiben, weil ich bei irgendetwas hängen bleibe.

Und dann kommt der Teil, in dem ich mir darüber klar werde, ob ich etwas richtig mache.

Deshalb habe ich es aufgegeben, meine eigenen Texte zu schreiben, und mich auf einen Publikumsliebling verlassen: Zend.

Ich habe mir andere Anbieter angesehen, aber Zend scheint schon eine Weile dabei zu sein und kennt sich aus.

MVC ist auch die Art und Weise, wie ich mit allem, was ich jetzt schreibe, vorgehen werde.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X