Willkommen, Gast ( Anmelden | Registrierung )     [ Hilfe | Mitglieder | Suche ]

 
Reply to this topicStart new topic
> Neustart mit neuem Framework?, Diskussion über ein mögliches Framework
mvsxyz
Beitrag Mon. 11. March 2013, 21:05
Beitrag #1


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



In diesem Thread möchte ich gerne diskutieren, welches bestehende Framework für die zukünftige Entwicklung in Frage kommen würde.

Aus meiner Sicht sollten wir bei der Wahl folgende Punkte bzw. Fragen beachten:
  • Wird das Framework aktiv weiterentwickelt?
  • Gibt ein Supportforum oder eine Mailingliste?
  • Wie hoch ist die Einarbeitungszeit in das Framework?
  • Wie schnell könnte man die bestehende Funktionalität von Sefrengo portieren?
  • Wie einfach kann das Framework erweitert werden?
  • Wird PHP 5.4+ unterstützt?


Folgende Frameworks sind bei einer ersten Sichtung in meinen Fokus gerückt (der Kommentar entspricht meinem ersten Eindruck):
  • Zend Framework 2 (ZF) - Der Mercedes unter den Frameworks, verhältnismäßig langsam(?)
  • Symphony Framework 2 - Quasi Gegenspieler zu ZF, ebenfalls sehr mächtig
  • CodeIgniter (CI) - Kleines, schnell erlernbares Framework, mäßige Weiterentwicklung
  • Laravel - Ursprünglich eine Abspaltung von CI mit sehr hohem Entwicklungstempo
  • Yii Framework - Sehr performant, allerdings mäßige Weiterentwicklung


Nun die Frage an die Entwickler, welche Punkte sind für euch bei der Auswahl des Frameworks relevant? Habt ihr bereits Erfahrungen mit dem einem oder anderen Framework gemacht?
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Mon. 11. March 2013, 21:14
Beitrag #2


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Ich habe bereits ein kleines Projekt mit CI umgesetzt und möchte folgende Stichpunkte dazu in die Runde geben.

  • Die Einarbeitung fällt sehr leicht und die Arbeitsweise ist (gefühlt) ähnlich der von Sefrengo.
  • Durch die breite Community gibt es bereits viele Erweiterungen und Lösungen.
  • Aufgrund der Abwärtskompatibilität werden die OOP-Konzepte leider nicht vollständig ausgeschöpft (z.B. keine Sichtbarkeitsmodifikatoren für Eigenschaften und Funktionen). Einen Hinweis auf eine neue Version habe ich nicht gefunden.
  • Unit-Tests werden nur durch das eigene CIUnit unterstützt und nicht vom Standard PHP-Unit
  • Die Templates werden über PHP-Variablen im Code realisiert, wodurch es zwangsläufig zu Mischcode aus PHP und HTML kommt.

Go to the top of the page
 
+Quote Post
Marko Merl
Beitrag Tue. 12. March 2013, 07:51
Beitrag #3


Member
**

Gruppe: Members
Beiträge: 11
Mitglied seit: 12.03.2009
Mitglieds-Nr.: 1.828



Hallo Leute,

das Thema FW ist immer so ne Sache... Grundsaetzlich halte ich vom Zend nicht viel, da es in der Geschwindigkeit einfach furchtbar ist. In Sachen Weiterentwicklung u Comm. ist es natuerlich wiederum nicht schlecht?! Da muesste man abwiegen was wichtiger ist?
Aber man sollte auch bedenken, dass das CMS Leute auf Standard vHosts installieren wollen, u das waere mit Zend nicht unbedingt moeglich.

Geschwindigkeit ist bei nem CMS eines der wichtigsten Dinge, da die Frontend Seiten so u so vieles an Bilder, JS, CSS usw. haben was die Geschwindigkeit beeinflusst u da SEO auch eines der Zukunftstraechtigen Themen ist wo auch Geschw. eine grosse Rolle spielt, sollte man das auch beruecksichtigen.

Das FW Symphony ist laut Aussagen anderer 10 mal schneller als Zend. Das waere dann schon ne Geschwindigkeit mit der man Arbeiten kann! Natuerlich ist das derzeitige Sefrengo (1.4.5) in Sachen Geschw. der Hammer, unter anderem auch dadurch der HTML-Code der Seiten in der DB gecached wird.

Generell waere es auf alle Faelle von Vorteil, wenn man einen Grossteil der Module u Plugins weiterhin verwenden koennte, um auch von der derzeitigen Version auf die neue Updaten zu koennen. Den bei knapp 500 Projekten waere eine Neuinst. eher a bisl aufwendig!

Auch zu beachten waere, die Zeit die fuer die Umsetzung gebraucht wird, bis man damit das erste Projekt online schalten kann! Da wir Entwickler auch einen Hauptberuf haben, werden wir nicht 40 Stunden die Woche daran Etnwickeln koennen. Da sollte sich man auch Gedanken machen wie man das innerhalb ein paar Monate fertig bekommt, den zu lange warten kann auch daneben gehen?!
Go to the top of the page
 
+Quote Post
mlanghoffbln
Beitrag Tue. 12. March 2013, 09:11
Beitrag #4


Member
**

Gruppe: Members
Beiträge: 44
Mitglied seit: 21.08.2006
Mitglieds-Nr.: 202



Hallo Zusammen,

richtig, die Wahl des ZF ist so eine Sache. Wenn ich bei den aufgezählten FWs die Bewertung "Mäßige Weiterentwicklung" lese, wäre das für mich bereits ein Ausschlußkriterium.

Auch die Punkte
  1. Wie hoch ist die Einarbeitungszeit in das Framework?
  2. Wie schnell könnte man die bestehende Funktionalität von Sefrengo portieren?

wären für mich keine primären Auswahlkriterien.

CI, Laravel, YII kenne ich nicht.
Aber wie oben geschrieben, wenn ich lese "Mäßige Weiterentwicklung", dann fällt das für mich schon weg.

Ich persönlich habe mit ZF (1) sehr gute Erfahrungen gemacht. Symfony hatte ich mir angesehen als ich nach einem guten FW für unsere Projekte gesucht habe und macht einen sehr guten Eindruck.

Zu den Kriterien:
  1. Wird das Framework aktiv weiterentwickelt?
  2. Gibt es ein Supportforum oder eine Mailingliste?
  3. Wie einfach kann das Framework erweitert werden?
  4. Wird PHP 5.4+ unterstützt?

Symfony:

Zu 1: Ich glaube hier kann man sagen: Ja
Zu 2: Ja
Zu 3: Ja - Es gibt aber bereits das CMF/CMS in Symfony. Besonderes Plus ist natürlich die aktive Unterstützung von Doctrine und Propel (mein Favorit)
Zu 4: Ich denke ja

Zend Framework 2:

Zu 1: Eindeutig Ja
Zu 2: Eindeutig Ja - Ich denke die aktivste und größte Community im PHP FW Bereich.
Zu 3: Durch die klare Modularisierung in ZF2 im Gegensatz zu 1 ein Ja. Auch hier bestehen zahlreiche Erweiterungen. Ein schickes, schönes und vor allem einfaches CMS Modul mit dem Namen Sefrengo würde die Community sicher bereichern. Auch hier kann man mit Doctrine oder Propel ausgezeichnet arbeiten.
Zu 4: Ja.

Ich für meinen Teil, wie ich es Holger bereits in einer Mail geschrieben habe, würde auf ZF 2 setzen.

Der Einwand ZF ist langsam ist gerechtfertigt. Ich denke aber dass es genug Freiheiten im FW gibt, um dies zu optimierenund bereits bei der Planung zu berücksichtigen.

Grüße Micha

Der Beitrag wurde von mlanghoffbln bearbeitet: Tue. 12. March 2013, 09:12
Go to the top of the page
 
+Quote Post
STam
Beitrag Mon. 2. September 2013, 14:08
Beitrag #5


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 541
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 8



Hi,

ich würde die zur Auswahl stehenden Frameworks an verschiedenen Kriterien aufhängen die stark an der zukünftigen Ausrichtung orientiert sind.
Um das Thema nochmals zu forcieren werfe ich mal einen völlig anderen Gedanken in den Ring smile.gif
ME wird die Zukunft in der Modelarchitektur von CMS und anderen in der intuitiven und leichten Bedienung liegen sowie in der Fähigkeit schnell viele Daten zu aggregieren und dem Nutzer sowie auch dem Besucher von Webseiten schnellstmöglich Daten visuell aufbereitet darzubieten.
Dabei wir es grundsätzlich eine Abkehr von spezialisierten (serverseitigen) Backendpages (Settings, Administration, Layout usw.) hin zu heterogenen Single-Site Anwendungen die eine übersichtliche GUI und vom Anwender anpassbare Dashboards (Informationszonen) und rollenbasierte (Administration/Redaktion) Actionboards bieten.
Diese grundlegend andere Anforderung im Backend und auch die erweiterten Anforderungen an moderne Single-Sites (Frontend client) bedürfen einer technischen Überarbeitung des Backend und Frontendbereichs.
Beispielhaft würde ich dort Libraries wie backend.js und knockout.js sehen mit denen ich schon größere Ideen umgesetzt habe.
Wer Knockout noch nicht kennt:
http://knockoutjs.com
http://www.heise.de/developer/artikel/Mode...js-1928690.html

Es ist also nicht nur notwendig im Backendbereich auf ein Framework zu setzen (oder zu entwickeln) welches eine gute Skalierbarkeit und Anpassung ermöglicht sondern ebenso im Frondend was eine Symbiose beider Kerne und gleichzeitige Betrachtung der Anforderung bedeutet.

Best
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Wed. 4. September 2013, 10:57
Beitrag #6


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Hi STam,

vielen Dank für deine Gedanken.

ZITAT
ME wird die Zukunft in der Modelarchitektur von CMS und anderen in der intuitiven und leichten Bedienung liegen sowie in der Fähigkeit schnell viele Daten zu aggregieren und dem Nutzer sowie auch dem Besucher von Webseiten schnellstmöglich Daten visuell aufbereitet darzubieten.


Das Daten aus verschiedenen Quellen wie Twitter, FB, etc. zunehmend aggregiert werden ist richtig. Sefrengo schlägt sich an dieser Stelle bisher noch nicht so gut. Trotzdem sollte ein CMS nicht nur Daten aus verschiedenen Quellen aggregieren und erneut aufbereiten, sondern auch bzw. in erster Linie, Autoren und Redakteuren die Möglichkeit bieten, neue Inhalte zu publizieren.

Was meinst du mit "schnellstmöglich Daten visuell aufbereiten"? Meinst du in Form von interaktiven Infografiken?

ZITAT
Dabei wir es grundsätzlich eine Abkehr von spezialisierten (serverseitigen) Backendpages (Settings, Administration, Layout usw.) hin zu heterogenen Single-Site Anwendungen die eine übersichtliche GUI und vom Anwender anpassbare Dashboards (Informationszonen) und rollenbasierte (Administration/Redaktion) Actionboards bieten.


Das sind ganz schön viele Informationen auf einmal. Ich stimme dir zu, dass der Trend vermehrt zu Single-Side Pages/Apps (SSP) geht und der komplette Reload der Seite immer weniger wird. Dieser Trend hat sich ja bereits mit AJAX abgezeichnet und wird durch die neuen MVVM-Frameworks, wie z.B. Knockout JS, noch beschleunigt. Ich zweifle jedoch, ob sich jedoch alles als SSP realisieren lässt, sondern eher, dass bestimmte Bereiche, wie Redaktion, Administration, eine SSP darstellen, zwischen denen dann ein Reload stattfindet.

ZITAT
Diese grundlegend andere Anforderung im Backend und auch die erweiterten Anforderungen an moderne Single-Sites (Frontend client) bedürfen einer technischen Überarbeitung des Backend und Frontendbereichs.


Da hast du meine Zustimmung! Das die Bedienung für Administratoren und Redakteure komfortabler werden muss, habe ich an anderen Stellen schon gesagt bzw. geschrieben. Eine Neuentwicklung bietet meiner Meinung nach, die einmalige Möglichkeit neue Konzepte auszuprobieren und neue Wege zu gehen. Die Chance sollten wir nutzen!

ZITAT
Beispielhaft würde ich dort Libraries wie backend.js und knockout.js sehen mit denen ich schon größere Ideen umgesetzt habe.


Von KnockoutJS (KO) habe ich bereits gelesen, jedoch noch nicht damit gearbeitet. Stattdessen habe ich mich mit AngularJS beschäftigt, welches in eine ähnliche Richtung geht. Generell bin ich stark für den Einsatz eines solchen Frameworks für den visuellen Part des CMS.

http://www.angularjs.org/
http://angular-tips.com/blog/2013/08/why-d...ar-dot-js-rock/

ZITAT
Es ist also nicht nur notwendig im Backendbereich auf ein Framework zu setzen (oder zu entwickeln) welches eine gute Skalierbarkeit und Anpassung ermöglicht sondern ebenso im Frondend was eine Symbiose beider Kerne und gleichzeitige Betrachtung der Anforderung bedeutet.


Sehe ich auch so. Wenn man es richtig anstellt, dann könnte das Backend-Framework (PHP, MySQL) eine Art (REST-)API bereitstellen und das Frontend-Framework (HTML, JS) teilweise oder gänzlich davon lösen.
Go to the top of the page
 
+Quote Post
STam
Beitrag Thu. 5. September 2013, 15:34
Beitrag #7


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 541
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 8



Hi mvsxyz,

freut mich doch jemand zu diesem Thema zu finden smile.gif

ZITAT
Was meinst du mit "schnellstmöglich Daten visuell aufbereiten"? Meinst du in Form von interaktiven Infografiken?

Hier rede ich von schnellen Databindings die auch per AJAX aufbereitet Daten aus dem Backend in eine Visualisierung wie zB Google Charts https://developers.google.com/chart überführen können. Im Grunde halte ich nichts (mehr) von serverseitig aufbereiteten Listen und Grafiken da diese den Flaschenhals in den meisten Frameworks bilden wink.gif

Von AngularJS habe ich bereits gelesen, jedoch noch nicht damit gearbeitet (smile.gif). Aber wirklich vergleichbar sind diese auch nicht da AngularJS ein rundumglücklich Lösung ist nebst eingebetteten JqLite/Jquery ist. Um das vergleichbar zu halten müsste ich DurandalJS anführen welches Jquery, Knockout und Require zu einem flexiblen MVVC Framework zusammenfasst.
Mir passt einfach das Databinding und die modularität von Knockout besser... http://www.johnpapa.net/compare-durandal-t...kout-to-angular

Zum Thema zurück!
Natürlich muss man aufpassen dass man nicht gleich das ganze System SF auf den Kopf stellt (oder gar in Frage) denn das Flair, die einfach redaktionelle Bedienung und das Fontend editing Konzept sind die Dinge die SF ausmachen denke ich. Für den Programmierer ist aber im Kern die kompatibilität zu Modulen und Plugins am wichtigsten und ein endlich offenes Repository wink.gif

Ich hatte schon mal ein Modul gebastelt das aus dem Contengrabber enstanden ist und eine (REST-)API abbildet und ein Projekt damit umgesetzt. Ein Plugin diente dazu im SF Kern die (virtuellen SF Seiten) als JS Templates nachzuladen und zu verwalten... sehr geschmeidig für SingleSites und virtuelle Pfade über REST, muss ich noch mal raussuchen denke ich.

Also ich freue mich auf neue Idee und Ansätze!

Lg

Go to the top of the page
 
+Quote Post
STam
Beitrag Thu. 13. August 2015, 20:41
Beitrag #8


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 541
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 8



Ping!
Go to the top of the page
 
+Quote Post
Resolution
Beitrag Thu. 13. August 2015, 23:44
Beitrag #9


Newbie
*

Gruppe: Members
Beiträge: 7
Mitglied seit: 11.05.2009
Mitglieds-Nr.: 1.881



Hallo!

Ich habe sehr gute Erfahrungen mit Yii2 gemacht und kann diese auch gerne teilen.
Es ist einfach, performant und verfügt über alle gängigen benötigten Funktionen und erfüllt die oben genannten Kriterien.
Innerhalb kurzer Zeit kann man damit eine schöne Anwendung zaubern und die Community sowie die Doku sind gut und nicht zu klein.
Darauf kann man, wenn man will, auch problemlos ein JS Framework setzen.

Viele Grüße
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Fri. 14. August 2015, 14:47
Beitrag #10


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



Yii2 klingt gut. Bisher habe ich mit Yii2 schon etwas gespielt und mir das Gii angeschaut.

Ein anderer Ansatz von mir war Yii2 als externe Bibliothek in Sefrengo 1.x zu verwenden. Das war leider nicht erfolgreich. Ich wollte die Datenbankabfragen erneuern und damit sicherer gegen SQL Injections machen.
Mein Ansatz war Yii2 als Root Ordner zu verwenden und die gesamte Sefrengo-Installation in public zu verschieben.
@Resolution: Geht das überhaupt oder ist das der falsche Ansatz?

Ansonsten müssen wir es, wie der Threadtitel schon sagt, als Grundlage für die neue Version nehmen.
Go to the top of the page
 
+Quote Post
Resolution
Beitrag Fri. 14. August 2015, 19:07
Beitrag #11


Newbie
*

Gruppe: Members
Beiträge: 7
Mitglied seit: 11.05.2009
Mitglieds-Nr.: 1.881



ZITAT(mvsxyz @ Fri. 14. August 2015, 15:47) *
Yii2 klingt gut. Bisher habe ich mit Yii2 schon etwas gespielt und mir das Gii angeschaut.

Ein anderer Ansatz von mir war Yii2 als externe Bibliothek in Sefrengo 1.x zu verwenden. Das war leider nicht erfolgreich. Ich wollte die Datenbankabfragen erneuern und damit sicherer gegen SQL Injections machen.
Mein Ansatz war Yii2 als Root Ordner zu verwenden und die gesamte Sefrengo-Installation in public zu verschieben.
@Resolution: Geht das überhaupt oder ist das der falsche Ansatz?


Ich glaube, dass es kein Problem ist Teile und Komponenten aus Yii zu verwenden um sie in ein anderes Projekt einzubinden.
Dazu würde ich aber anders herum vorgehen und innerhalb einer Sefrengo-Installation Yii inkludieren und von dort aus dann z. B. die Active Record Funktionalitäten nutzen.

Dafür bräuchtest du grob gesagt "nur" eine Konfiguration für Yii und alles was Yii selbst betrifft, also das vendor-Verzeichnis.
In der Konfiguration kannst du dann festlegen, wo deine Models liegen, damit der Autoloader sie findet.

Aber das geht ein wenig weg vom Topic, denn ich würde dann gleich alles neu machen auf Basis von Yii2 und dann auch richtig mit MVC, dem eingebauten Rechtesystem auf DB-Ebene, allen HTML-Hilfsmethoden sowie bootstrap arbeiten.

Viele Grüße
Resolution
Go to the top of the page
 
+Quote Post
mvsxyz
Beitrag Sat. 15. August 2015, 00:47
Beitrag #12


Advanced Member
********

Gruppe: Admins
Beiträge: 507
Mitglied seit: 27.06.2006
Mitglieds-Nr.: 11



@Resolution: Ja, wenn ich mich erinnere habe ich auch das gemacht. Leider ohne Erfolg oder mit viel Zeit. Ich stimme dir zu, dass ein neuer Anfang ist einfacher und am Ende flexibler.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 3.11.24 - 02:06

Sefrengo ist ein eingetragenes Markenzeichen und urheberrechtlich geschützt.
Copyright 2009 Design & Daten, Alle Rechte vorbehalten.