Codeigniter-Framework oder Standard-PHP verwenden? [geschlossen]

8

Diskutiert dies mit einem Entwickler, wie ich vorgeschlagen habe, CodeIgniter Framework über Standard-PHP zu verwenden.

Ihre Antwort war wie folgt:

  

Vorteile von Code Igniter beinhalten standardisierte MVC-Struktur.   Zu den Nachteilen gehört die Tatsache, dass Sie das gesamte Framework benötigen, auch wenn Sie nicht alles verwenden müssen und auch ein bisschen langsamer für das Team, um das Projekt zu implementieren. Vorteile unseres normalen Custom PHP-Frameworks - schnell zu entwickeln und absolut flexibel, benötigen nur den Code, der relevant ist.

Würdest du ihrer Antwort zustimmen und warum? Ich habe CI immer schneller eingeführt, da kurze Tags und frei verfügbare Module verwendet wurden.

    
Matt5403 21.05.2011, 18:36
quelle

7 Antworten

14
  • CodeIgniter hat eine Lernkurve, aber diese Kurve ist wahrscheinlich schneller als Ihr benutzerdefiniertes Framework. Das liegt daran, dass CodeIgniter gut dokumentiert ist.
  • CodeIgniter ist eine ziemlich umfassende Bibliothek. Sobald Sie das Framework kennen, können Sie jede seiner Bibliotheken nicht nur im aktuellen Projekt, sondern auch in verschiedenen anderen Projekten einsetzen.
  • Die Arbeit ist bereits für Sie erledigt. Sie wissen möglicherweise nicht einmal, dass ein XSS- oder CSRF-Exploit in Ihrem Code vorhanden ist, da Sie keine gründliche Sicherheitsüberprüfung durchgeführt haben. Aber ein Gemeinschaftsrahmen wird ständig überprüft.
  • Sie können CodeIgniter auf Ihre eigenen Bedürfnisse erweitern und haben weiterhin benutzerdefinierte Funktionen.
  • Nachdem Sie CodeIgniter ausreichend lange benutzt haben, werden Sie unweigerlich einige großartige Programmierpraktiken erlernen und Ihr Gesamtwissen verbessern, da das Framework viele Best Practices verwendet.
  • Wenn Sie auf eine Problemsituation stoßen, ist wahrscheinlich eine andere Person bereits damit beschäftigt. CodeIgniter hat auch eine gute Community, über die Sie sich stundenlang Debugging ersparen können.

Das heißt, CodeIgniter ist nicht das einzige Framework, aber ich mag die Tatsache, dass sie mit der neueren Version zu PHP5 gewechselt sind. Im Allgemeinen sind Open-Source-Frameworks der richtige Weg.

    
aleemb 21.05.2011, 19:17
quelle
5

Ich würde dem nicht zustimmen.

Die Details des Projekts wären sehr hilfreich, aber im Allgemeinen sind Frameworks sehr hilfreich und beschleunigen die Arbeit (nicht unbedingt die Anwendung) erheblich .

Bedenken Sie, dass 'Custom PHP Framework' (was auch immer sie denken) ... benutzerdefiniert ist. Das heißt es wird nicht getestet wie zB. Zend Framework hat sich in Tausenden von Projekten nicht als effizient und erfolgreich erwiesen, und es ist wahrscheinlich etwas sehr Einfaches (da große Frameworks seit Jahren von großen Entwicklerteams und den Entwicklern von Unternehmen, die sie verwenden, entwickelt wurden). p>

Natürlich kann PHP eine gute Option sein, wenn Sie wirklich Geschwindigkeit (der Anwendung) brauchen, Zeit haben, es zu bauen und Geld, um die Entwickler zu bezahlen, die es ziemlich umfangreich entwickeln werden (weil sie viele Funktionen implementieren werden) das kommt mit fast jedem PHP-Framework). Aber Sie müssen sicher sein, dass Sie wirklich müssen diese nicht-Standard-Ansatz zu nehmen (als "Nicht-Standard" ich meine nicht mit einem zuverlässigen Rahmen).

Es liegt an dir. Wenn Sie einige Details zu der Anwendung angeben können, die erstellt werden muss, sind die Antworten möglicherweise relevanter.

    
Tadeck 21.05.2011 18:57
quelle
4
  

Nicht-Business-Projekte: Standard-PHP.   Geschäftsprojekte: CI.

Der Versuch, Ihr eigenes Framework zu erstellen, ist sehr lehrreich und wird Ihnen sehr helfen; Sie können damit auch ein Framework erstellen, das Ihren Anforderungen entspricht und nicht einem allgemeinen. Aber das könnte nur getan werden, wenn Sie es schaffen, ein Nicht-Geschäftsprojekt zu erstellen, da Geschäftliches Stabilität erfordert, die Sie möglicherweise nicht von einem selbst erstellten Framework erhalten. Wenn Sie Ihr eigenes Framework erstellen, verlieren Sie möglicherweise viel Zeit (was bei der Arbeit mit Geschäftskram teuer ist) und Geld für nichts.

Es hängt im Wesentlichen von Ihrem Projekttyp ab.

    
Shoe 21.05.2011 18:56
quelle
2

Ich habe etwas Erfahrung mit dem Schreiben meines eigenen CMS, und ich muss zugeben, dass dies sehr erzieherisch war, aber aus finanzieller Sicht völlig unwirtschaftliche Entscheidung.

Meiner Meinung nach sollten diese Entwickler versuchen, eine Spezifikation zu schreiben. Sehr detaillierte Spezifikation dessen, was sie implementieren müssen. Dann sollten sie die Zeit berechnen, die benötigt wird, um eine solche Funktionalität zu kodieren, damit sie diese Arbeit mit Elementen vergleichen können, die bereits in CI enthalten sind und entscheiden, welche Option in Bezug auf die Zeit zum Programmieren, Lernzeit und natürlich Zeit zum Testen realistischer ist.

>     
Max Barnas 21.05.2011 18:52
quelle
2

Wenn es ihnen nichts ausmacht, ihren eigenen Rahmen zu lehren, dann ist es wahrscheinlich die beste Lösung (besonders wenn der Typ, der sie geschrieben hat, immer noch da ist).

Allerdings können benutzerdefinierte Frameworks zu nicht unterstützbaren Albträumen werden. CI hat den Vorteil einer kleinen Community und einer gründlichen Dokumentation. Sobald Sie ein paar Projekte mit ihm ausrollen, bin ich sicher, dass die Roll-out-Zeit so schnell ist wie das benutzerdefinierte Framework.

    
Ryre 21.05.2011 19:02
quelle
2

Wir haben unser eigenes Framework zugunsten von CI aufgegeben. Finanziell war es eine schwierige Entscheidung, da wir 1000 Stunden damit verbracht haben und viele Projekte laufen.

CI hat uns erlaubt, schneller zu entwickeln und hat unsere Projekte standardisiert. Die Architektur erlaubt uns auch, leicht zu erweitern, ohne Bedenken, den Kernrahmen zu schädigen.

CI ist der Weg vorwärts IMO

    
AlunR 22.05.2011 07:21
quelle
1

Ihre Antwort war quasi korrekt ...

%Vor%

Das ist im Allgemeinen nicht wahr, und in vielen Fällen ist es wahrscheinlich sogar das Gegenteil. Persönlich bin ich in der Lage, Projekte mit Hilfe eines Frameworks schneller zu machen. Ich habe MVC nicht in einer Teamumgebung verwendet, aber ich würde mir vorstellen, dass durch die Aufteilung von Arbeit in Models, Views und Controllers Workflow-Trennungen die Entwicklungsgeschwindigkeit fördern würden.

Was bauen Sie? Das ist die entscheidende Frage.

Wenn Sie eine dynamische Webanwendung erstellen, können Sie mit Frameworks Stunden und Stunden an Arbeit sparen, da Sie das Rad nicht immer wieder neu erfinden müssen. Wenn der Punkt Ihres Projekts grundlegend ist, dann fügen Frameworks tatsächlich zu viel Overhead hinzu. Ich würde sagen, in der Regel, wenn Ihr Projekt mehr als 5. PHP-Dateien benötigen, dann beginnen Sie mit einem Framework, denn das ist es, was es ist, um die Logik zu trennen.

Verwenden Sie CodeIgniter oder ein anderes Framework für größere Projekte, bei denen der Verdacht besteht, dass der Code unorganisiert wird. Das MVC-Muster verhindert diese Desorganisation.

Es klingt so, als hätten Sie noch nie zuvor ein Framework verwendet. Der erste Schritt bei der Entscheidung, ob ein Framework für die Aufgabe geeignet ist oder nicht, besteht darin, sich mit einem vertraut zu machen. Sie sind dann in einer viel besseren Position, um diesen Anruf zu tätigen. Ich empfehle nicht, dass Sie gleich Ihr eigenes schreiben; Du wirst eine Menge Einblick bekommen, nachdem du mit CI, Cake oder Zend herumgespielt hast.

    
Jordan Arseno 21.05.2011 19:00
quelle

Tags und Links