Was ist ein PHP-Framework und was ist ein gutes? [geschlossen]

8

Ich betreibe eine Seite über PHP Frameworks , aber ich kann keine genaue Definition dafür finden, und ich denke immer darüber nach eine Frage, wie man ein gutes PHP-Framework ausmacht? Eigenschaften? Handbuch? Effizienz? Oder etwas?

    
halfer 19.11.2008, 07:29
quelle

6 Antworten

27

Ein Programmierforum fragen, was ein guter Rahmen ist, ist wie ein Autoforum zu fragen, was ein gutes Auto ist. Die Meinungen sind sehr unterschiedlich und in 95% der Fälle ist es egal, was Sie wählen, solange es aktiv entwickelt wird. Die meisten Ihrer Antworten basieren auf Religion und nicht auf subjektiven Vergleichen. :)

    
Fuzzy76 19.11.2008 07:53
quelle
14

Im Wesentlichen ist ein Framework die Struktur, auf der Sie Ihr Programm aufbauen können. Es ermöglicht Ihnen, sich mit vielen verschiedenen APIs zu verbinden und die Struktur Ihrer eigenen Anwendung zu bestimmen. Ich benutze das Zend Framework. Es ist nicht einfach zu erlernen, hat aber alles, was Sie für eine großartige Anwendung brauchen. Ich würde vorschlagen, den QuickStart Guide auf der Seite durchzugehen, um den Ball ins Rollen zu bringen. Es verwendet Model-View-Controller, was meiner Meinung nach sehr wichtig ist. Sobald Sie es konfiguriert haben, macht es die Dinge extrem einfacher!

Andere Frameworks umfassen CodeIgniter und Symfony. Einige mögen CodeIgniter wegen seines kleineren Platzbedarfs. Es ist alles eine Frage der Präferenz. Was auch immer Sie wählen, achten Sie darauf, die Dokumentation auf den Websites zu verwenden, da es wichtig ist zu verstehen, wie Sie es am besten verwenden. Haben Sie auch keine Angst, den Code von Zeit zu Zeit zu übertreffen, nur um besser zu verstehen, wie die Dinge funktionieren.

    
Matt 19.11.2008 08:39
quelle
10

Frameworks bieten ein Gerüst, mit dem Sie sich schneller / sauberer entwickeln können. Sie bieten häufig Toolsets für die UI-Komponenten und den zugrunde liegenden Datenbankzugriff.

Bei (sehr) kleinen Projekten kann ein Framework übertrieben sein, aber oft ist es hilfreich, Ihnen viel wiederverwendbaren Code zur Verfügung zu stellen.

Einige bemerkenswerte Frameworks für PHP: Zend Framework CodeIgniter Symfony CakePHP Mojavi

Eine Vergleichstabelle. Eine detailliertere Rezensionsseite.

    
Rizwan Kassim 19.11.2008 09:52
quelle
7

Ein PHP-Framework ist in meinen Augen eine Sammlung von Klassen, die Ihnen helfen, eine Webanwendung zu entwickeln.

In meiner Firma benutzen wir das Zend Framework. Ich muss sagen, dass der Einstieg in dieses Framework ziemlich schwierig ist, aber wenn Sie die API und das Referenzhandbuch verwenden, haben Sie ein großartiges Framework. Es ist auch interessant, weil Zend Leute auf dem Projekt sitzen, so dass sie diese internen Tricks benutzen können und einige Leistungssteigerungen bekommen, die andere nicht bekommen können.

Was ZF auch von anderen unterscheidet, ist die Möglichkeit, MVC-Programme ohne große Probleme zu erstellen.

    
Thomaschaaf 19.11.2008 07:35
quelle
2

Das PHP-Framework ist eine Bibliothek, die das Leben von Site-Entwicklern erleichtert, indem es zum Beispiel einige komplexe HTTP-Protokolle versteckt oder einige nützliche Funktionen hinzufügt. Zum Beispiel implementiert das CakePHP sogenannte MVC , was Entwickler dazu bringt, ein Level höher als HTTP zu denken. Das habe ich bisher gelernt.

    
grigy 19.11.2008 09:44
quelle
2

Es gibt viel zu sagen für Frameworks - und gute Beiträge hier. Seien Sie sich jedoch bewusst, dass sie nicht immer die beste Lösung sind. Gründe, die Sie vielleicht vermeiden möchten, sind

  1. Wegen der Größe der Codebasis neigen sie dazu, langsam zu sein (ich habe Zahlen von 10 mal langsamer gesehen, einfache PHP eingebettete Seitenlieferung, die für Zend zum Beispiel zitiert wurde - zugegebenermaßen eine der größeren).

  2. Sie können unflexibel außerhalb der Domäne sein, mit der sie arbeiten sollen. Ein Framework zu erweitern, um etwas zu tun, das nicht Standard ist, kann viel schwieriger sein, als nur von Grund auf neu zu programmieren.

  3. Ein gewisser Verzicht auf Modularität ist erforderlich. Der Vorteil der Verwendung eines einfacheren Template- / Kontroll-Dateisystems (wie zB TinyButStrong) ist, dass jede Seite eine eigene Einheit ist, was natürlich dazu tendiert Machen Sie Ihr System einfacher zu testen und robust.

  4. Sie sind anfällig für Versionskontrollprobleme. Es ist alles sehr gut und gut, dein erstes zu entwickeln, aber nachdem du etwa ein Dutzend Webseiten entwickelt hast, wirst du höchstwahrscheinlich feststellen, dass du drei oder vier Release-Versionen des Frameworks benutzt hast und du einen Mischmasch aus Codebasen hast arbeiten mit - und synchronisieren alles braucht Zeit, die Sie wahrscheinlich nicht haben werden.

Keines der oben genannten Argumente sind schlüssige Argumente gegen die Verwendung eines Frameworks, in vielen (meisten?) Fällen werden die Vorteile höher ausfallen, aber Sie sollten nicht nach einem greifen, ohne zuerst zu überlegen, was Ihre Anforderungen sind und was die beste Lösung ist für jedes spezielle Problem.

    
Cruachan 19.11.2008 10:34
quelle

Tags und Links