5 Stimmen

Entwicklungskosten, Frameworks vs. Straight PHP

Ich möchte mehrere Websites entwickeln lassen und frage mich, ob es insgesamt billiger ist, sie in einem Framework oder in reinem PHP zu entwickeln.

Ich habe Ideen für verschiedene Arten von sozialen Websites mit den folgenden Bestandteilen: Wikis, Tagging, Abstimmen und Kommentieren, sehr einfaches Blogging. Ich möchte die Komponenten auf diesen Seiten wiederverwenden.

Ich habe auf einer Website einen guten Anfang gemacht, aber ich komme wirklich nicht schnell genug voran. Und als ungeschulter PHP-Programmierer, der hauptsächlich Spaghetti-Code programmiert, habe ich Angst, dass mein Code nicht ernst genommen wird, wenn ich den Quellcode für Beiträge von außen öffnen möchte.

Ich verstehe, dass MVCs für eine schnelle Entwicklung nützlich sind, aber ich frage mich, ob die dadurch reduzierten Entwicklungskosten durch die erhöhten Kosten für die Einstellung von Mitarbeitern mit Framework-Kenntnissen aufgewogen werden.

Ich mache mir auch Sorgen, dass der Code des Frameworks veraltet, d.h. nicht mehr mit der neuesten Version des Frameworks kompatibel ist. Ich nehme an, dass die geringeren Wartungskosten die Kosten für ein Upgrade aufwiegen? Ich habe mir Symfony 2 angesehen, da es angeblich genauso schnell oder schneller als andere ist.

Vielen Dank

6voto

Pascal MARTIN Punkte 384469

Hier sind ein paar Dinge, an die Sie wahrscheinlich noch nicht gedacht haben:

  • Bei Verwendung eines Frameworks wird Ihr Code auf eine bestimmte Weise strukturiert (es wird den Leitlinien des Rahmens folgen) Das bedeutet, dass es für einen neuen Mitarbeiter einfacher ist (der bereits mit dem Rahmenprogramm gearbeitet hat) um zu verstehen, wie der Code strukturiert ist.
  • Frameworks bedeuten nicht nur MVC: Sie enthalten in der Regel eine große Bibliothek mit soliden, gut getesteten und gut durchdachten Komponenten; so müssen Sie viele Räder nicht neu erfinden.
  • Nicht mit der neuen Version eines Frameworks kompatibel zu sein, kann ein Problem sein, ja - aber glauben Sie, dass Ihr Code ohne ein Framework einfacher zu pflegen ist?
    • Ein paar Tage, um einen Teil Ihres Codes zu überarbeiten, damit er mit einer neuen Version Ihres Frameworks funktioniert, könnten eine gute Investition sein.
    • Wenn Ihr Code richtig strukturiert ist (Modellcode in Klassen, die nicht (viel) vom Framework abhängen), wird die Aktualisierung nicht so schwierig sein
    • In Anbetracht der Anzahl der vollständig von Hand erstellten PHP 4-Anwendungen, die immer noch im Umlauf sind, scheint es nicht das Framework zu sein, das die Leute vom Upgrade abhält...

Andererseits :

  • Wenn Sie Spaghetti-Code ohne ein Framework machen, bedeutet das wahrscheinlich, dass Sie nicht so viel Erfahrung haben -- was bedeutet, dass Sie ein bisschen Zeit brauchen, bevor Sie mit einem neuen Framework effizient arbeiten können (Sie müssen es lernen - und das kann in der Regel ein paar Wochen/Monate dauern)

1voto

Ramiro Punkte 470

Wenn Sie sich nicht für einen Rahmen entscheiden, muss die Person, die Sie einstellen, Ihre Konventionen lernen, was länger dauern wird, bis sie tatsächlich gute Ergebnisse erzielt. Im Grunde genommen werden Sie Ihr eigenes Framework erstellen, und Sie können darauf wetten, dass niemand Erfahrung damit hat. Mit einem Rahmenwerk haben Sie zumindest eine gemeinsame Basis. Sie sollten sie wahrscheinlich immer noch nur zu den Grundlagen der Sprache befragen, aber wenn sie anfangen zu arbeiten, können sie online gehen und anderen Fragen zu einer bestimmten Art und Weise stellen, etwas mit dem Framework zu tun. Wenn Sie Ihr eigenes Framework erstellen, müssen sie Sie möglicherweise nach den Konventionen fragen, die Sie verwenden wollen.

Frameworks sind nützlich, um den Einstieg zu erleichtern. Denken Sie daran, dass Sie die Verwendung des Frameworks irgendwann "aufgeben" können, indem Sie einfach anfangen, von den Konventionen des Frameworks abzuweichen. Sie könnten einfach den Code des Frameworks nehmen und ihn zu Ihrem eigenen machen. Ich ignoriere jegliche Art von Lizenzierung, da ich davon ausgehe, dass dies eine Webanwendung sein wird.

1voto

k to the z Punkte 3189

Es hört sich so an, als ob Sie entweder einen php-Entwickler haben oder einen bekommen werden. Jeder anständige PHP-Programmierer sollte in der Lage sein, jedes PHP-Framework in ein paar Wochen zu lernen.

Einige Frameworks sind besser für Abwärtskompatibilität geeignet als andere. Das müssen Sie bei Ihrer Recherche vergleichen.

Yii ist das schnellste php-Framework, das ich kenne.

1voto

Steven Mercatante Punkte 23557

Hier ist der Grund, warum Sie sich für das Framework entscheiden sollten:

  • Wenn Sie das nicht tun, werden Sie das Rad immer wieder neu erfinden müssen. Frameworks stellen Ihnen ausgereifte, stabile Bibliotheken zur Verfügung, die wahrscheinlich die meisten Aufgaben übernehmen, die Sie durchführen müssen.

  • Es ist viel einfacher, Entwickler zu finden, die sich mit dem von Ihnen gewählten Framework auskennen, als jemanden zu finden, der sich mit Ihrer eigenen Codebasis vertraut macht.

  • Frameworks sind mittlerweile so weit verbreitet, dass es kaum noch Entwickler gibt, die keine Erfahrung damit haben. Wenn mit Framework-erfahrenen Entwicklern überhaupt noch Kosten verbunden sind, dann sind sie minimal.

  • Einige Frameworks haben einfache Möglichkeiten, die Codebasis zu aktualisieren - Symfony ist eines davon.

Ein Hinweis: Verwenden Sie nicht Symfony 2. Es ist noch nicht produktionsreif. Verwenden Sie stattdessen Symfony 1.4, oder wenn Sie ein Framework mit einer einfacheren Lernkurve suchen, CakePHP, CodeIgniter oder Kohana.

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