Frage

Ich halte beim Lesen, wie groß codeigniter von einem Entwicklungs Standpunkt ist. Und ich bin sicher, dass das Framework wird den Entwicklungsprozess schneller machen. Aber die Frage, die ich mir stelle ist, wird es einen Unterschied zu einem individuell vorgenommene Rahmen, die auf Ihre Bedürfnisse abgestimmt?

Ist CI trotz der beworbenen kleinen Stellfläche, geht auf „Moor“ down das System, weil es im Grunde ein Rahmen auf einem Rahmen (die später zu PHP als Rahmen C) ausgelegt? Gibt es gute Möglichkeiten, um die Last zu verteilen? Gibt es große Anwendungen in der freien Natur, die mit CI gemacht wurde?

Danke Casper.

War es hilfreich?

Lösung

Ich bin mit einer codeigniter Website mit etwa 11K-Dateien.

Ich habe stark die codeigniter der Grundstruktur für meine Bedürfnisse angepasst. Zum Beispiel habe ich 3-Anwendungen mit 3 Front-Controller der gleichen Systemdateien. Ich benutze Smarty als meine Template-Engine. Ich habe reiche PHP-Web-Anwendungen bereitgestellt von jQuery und Prototyp / Scriptaculous. Ich benutze Formularvalidierung, Authentifizierung, aktiver Datensatz, E-Mail, etc. etc.

Meine bisherigen Erfahrungen sind sehr positiv.

Wenn Sie eine (real) Template-Engine erhalten wie Smarty in Codeigniter gesteckt Sie alle Macht haben, die Sie für mittlere bis große Websites benötigen.

Sie haben über die Organisation Ihrer Website in großen ‚metagroups‘ als ‚Controller‘ Struktur in Codeigniter zu denken, erwartet ein solches Verhalten. ( 'Blogs', 'Waren', 'Foren', etc ..)

CI ist sehr einfach hinzufügen Plugins für.

vereinfacht das Framework eine Menge Mist würden Sie sonst zu Hand-Code benötigen. Es ist schnell, einfach und konfigurierbar.

Meine einzige große Beschwerde bei CI so weit ist, dass es nicht sehr Multi-Anwendung bewusst. Das Standard-Layout vorausgesetzt, dass Sie laufen 1 Anwendung. In meinem Fall habe ich eine globale Anwendung mit der globalen Datei, die in alle laufenden Anwendungen gezogen werden kann. Dies könnte jedoch gelöst eleganter werden. Darüber hinaus haben Sie ein wenig mehr Flusen hinzuzufügen zwischen Front-Controller zu wechseln.

Mein bevorzugter Aspekt der CI ist einfach der aktiven Datensatz auf einer MySQL-DB. Es ist tot einfach eine DB-Verbindung einzurichten und liefen aktive Datensatz Abfragen erhalten.

Ich würde sagen, dass es ziemlich einfach ist, mit zu beginnen. So stellen Sie sicher Laden um und herauszufinden, wie Smarty in Ihre App stopfen. Sie können den Standard verwenden ‚nach Ansicht des von Codeigniter, aber die Minute, die Sie benötigen, wenn / else-Logik in Ihren Vorlagen Sie geschraubt sind.

setze ich eine ‚Vorlagen‘ und einen ‚Inhalt‘ Bereich in jeder Anwendung, die ich jeweils mit Smarty-Templates und statischen Inhalten füllen. Der Rest hat ich aus einer DB-Verbindung ziehen kann.

Andere Tipps

Das ist wirklich eine Frage, die nur Sie beantworten können. Wenn Sie von einem „großen System“ sprechen, könnte man etwas weitgehend verwendet (von Seitenzugriffen / etc.), oder etwas bedeuten, die einen großen Satz von Geschäftsregeln umfassen aber nur von wenigen Menschen genutzt werden. Ist die Anwendung müssen schnell sein, oder können Sie es über mehrere Server Load Balancing?

Ihr „PHP ist ein Framework für C“ Kommentar ist ziemlich aus dem Gleichgewicht geraten, IMO. Nein, ist PHP nicht so schnell wie C. Aber es ist viel besser auf Web-Anfragen Handhabung. PHP ist in einigen der größten Websites der Welt verwendet - Facebook wurde ursprünglich komplett in PHP geschrieben. Yahoo nutzt PHP ziemlich viel. So ist PHP schnell genug für fast jedermann, besonders wenn man bedenkt, dass die Datenbank fast immer Ihre Engpass sein wird. Wenn Ihre PHP-Anwendungen verlangsamen, können Sie memcache / Loadbalancer / put mehr Anwendungsserver in Ihrem Netzwerk verwenden. Ziemlich einfach das PHP Ende Zeug zu skalieren.

Was ich Ihnen sagen kann ist ein kurzer Vergleich mit anderen Frameworks. Ich habe CI in begrenzten Installationen verwendet, vor allem anderen Menschen zu helfen, aber was ich gesehen habe, habe ich gern. Es gibt Ihnen eine Geschwindigkeit-in-Laufzeitvorteil gegenüber so etwas wie CakePHP, aber es wird die Entwicklungszeit zu erhöhen (wie Cake größte Stärke ist seine Fähigkeit, schnell zu entwickeln und einzusetzen). Speed-weise es fühlt sich ziemlich vergleichbar mit Zend oder Symfony, die als noch etwa 5-7x langsamer ist nur die rohe PHP Schreiben selbst.

Um die verschiedenen Frameworks zusammenzufassen (NB: Meiner Meinung nach unten):

  • ist CakePHP groß für die schnelle Entwicklung. Seine Leistung ist das Schlimmste der wichtigsten Rahmenbedingung, obwohl der 1.3 Release (in Kürze!) Sollte man eine frei bekommen (keine Änderungen in der API, sie sind nur die PHP4 Unterstützung zu entfernen) 25% Geschwindigkeitsschub. Es konzentriert sich auf Active und ist super schnell eine voll funktionsfähige Website bis zum Laufen (ernsthaft, ernsthaft Rapid Development / Prototyping Koteletts).
  • Zend ist die am weitesten verbreitete. Es hat die größte Flexibilität mit seinen Hinzufügen von Modulen. Es ist super schnell, wenn auch nicht besonders leicht. Für ein Unternehmen, Projekt, würde ich mit diesem oder symfony gehen. Man fühlt sich wie ein buncha verschiedenen Bibliotheken mir verwenden. Und ihre Namenskonventionen sind ein wenig belastende ...
  • Symfony - siehe die Zend Kommentare. Obwohl symfony soll noch enterprisey sein.
  • CodeIgnitor ist das neue heiße Kind auf dem Block. Sein Schwerpunkt aus dem Weg zu bleiben, während immer noch ein „Gerüst“, das heißt ein Werkzeug zu sein, die Sie tun, um Ihre Arbeit schneller helfen. Es ist schnell zu laufen, aber ein wenig langsamer zu entwickeln.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top