[Tutorial] Mein eigenes MVC-Framework: Artikelübersicht
In meiner Artikelserie „Mein eigenes MVC-Framework“ geht es um die Entwicklung eines eigenen MVC-Frameworks in PHP. Diese Seite listet alle zu diesem Thema gehörigen Artikel auf:
- Einführung
- Verzeichnisstruktur und __autoload()
- Der FrontController und das erste Projekt (wird noch ausführlicher beschrieben)
- Die Config-Klasse und die Konfigurationsmöglichkeiten
- Das Request- und Response-Pattern
- PreFilter und PostFilter und die Einbindung im FrontController
- SubController und die Einbindung im FrontController
- Der Debugger (muss noch überarbeitet werden)
- Die View-Klasse(n)
- Der erste Controller und die Action-Methoden (muss noch überarbeitet werden)
- ViewHelper-Klassen
- Die MySQL-Klasse (noch nicht vorhanden)
- Die Session-Klasse
- Models
- Die Rechteverwaltung und die ACL-Klasse (noch nicht vorhanden)
- Validator-Klassen (noch nicht vorhanden)
- Erleichterte Formularerstellung und Validierung (noch nicht vorhanden)
- [Download] Komplettes Framework mit Beispielprojekt (noch nicht vorhanden)
Da ich das Tutorial parallel zur Entwicklung schreibe, kommt es oft vor, dass Lücken entstehen oder nachträgliche Änderungen notwendig sind. Es gab in letzter Zeit einige sehr große Änderungen. Aus diesem Grund wird jetzt auch das Tutorial komplett überarbeitet. Ob ein Artikel schon überarbeitet wurde, seht ihr in der Klammer. Viel Spass beim lesen!
[…] Übersicht über Alle Artikel: Mein eigenes MVC-Framework: Artikelübersicht […]
[…] << Zurück zur Übersicht […]
[…] << Zurück zur Übersicht […]
[…] Tipps und Tricks für Webmaster PHP, MySQL, HTML, JavaScript, AJAX, usw… « Mein eigenes MVC-Framework: Artikelübersicht […]
[…] << Zurück zur Übersicht […]
[…] << Zurück zur Übersicht […]
[…] MVC-Tutorial Hallo, ich schreibe zur Zeit an einem Tutorial über MVC-Frameworks und wollte fragen, wie ihr es findet. Es ist noch nicht fertig. Zur Zeit gibt es noch keine Views […]
[…] << Zurück zur Übersicht […]
[…] und Kritik. Die Kritik werde ich dann in den weiteren Kapiteln beachten. Der link zum Tutorial: Artikel
[…] nacht wollte ich endlich wieder an meinem Projekt, das auf meinem Framework basiert, weiterarbeiten. Da PHP seit Version 5 die heiß ersehnten Type Hints untertützt, wollte […]
[…] << Zurück zur Übersicht […]
[…] << Zurück zur Übersicht […]
[…] << Zurück zur Übersicht […]
[…] << Zurück zur Übersicht […]
[…] Wenn man seine Klassen klug benennt, ist es möglich, dass Klassen der gleichen Art / Klassen eines Packages in Unterordnern abgelegt werden. Hierzu gibt es ein kleines Beispiel aus meinem Framework: […]
[…] V und C mehr Beachtung geschenkt habe. Ich bin momentan dabei, ein Projekt mithilfe meines eigenen MVC-Frameworks zu […]
[…] MVC-Framework […]
[…] MVC-Framework […]
[…] MVC-Framework […]
[…] MVC-Framework […]
[…] werden sehr oft fertige Frameworks, wie z.B. mein Framework oder auch das ZEND Framework verwendet. Diese Frameworks bieten fertige Methoden und Klassen, um […]
[…] […]
Schrott… totaler schrott, nischt funzt, es wird teilweise von klassen geerbt die nirgends zu finden sind… könnte man sich sparen und erst dann online stellen wenn alles komplett
Hi, deswegen musst du doch nicht gleich alles als totalen Schrott bezeichnen!
Wenn du mir sagst, wo genau etwas unklar ist, behebe ich das gerne.
[…] hinzugefügt wird. Aber für PHP gibt es nichts in der Richtung. Deshalb habe ich für mein Framework eine Komponente namens FW_Tool_ID […]
Hallo Simon,
ich wollte Dir schon lange mal unbedingt sagen das ich Dein Tutorial sehr sehr gut finde. Auch der Ansatz ein eigenes FW zu schrieben finde ich nicht verkehrt. Man lernt dabei viel dazu und muss sich auch nicht durch ein überladene API durchkämpfen bis man die für sich wichtigen (Kern)Features gefunden und verstanden hat.
Bin jedenfalls gespannt auf das erste Beispielprojekt und dem Upload des kompletten Frameworks und bleibe bis dahin ein interessierter Verfolger Deiner Arbeiten.
Gruss,
Oliver
Hi,
danke für dein Lob!
Momentan überarbeite ich die komplette Formularverarbeitung und die Validierung. Denn da hat sich so einiges an schlechtem Code eingeschlichen.
Das, was du in deinem ersten Satz sagst, da stimme ich dir voll und ganz zu! Ich bereue es kein bisschen, mein eigenes FW entwickelt zu haben bzw. zu entickeln. So viel wie ich dabei gelernt habe hätte ich bei Zend und Co. wohl nie gelernt.
Falls du mit Beispielprojekt eine Seite von mir meinst, die ich damit erstellt habe, die gibt es schon: http://www.tempim.de
Falls du ein Beispielprojekt in Form von Code meinst, da musst du leider noch eine Weile geduldig sein. Dafür habe ich im Moment keine Zeit 🙁
MfG
Simon
Da bin ich gerne geduldig, bin auch deswegen froh das ich Dein FW entdeckt habe, weil es auch ditaktisch gut aufgebaut ist und die Dinge gut erklärt. Von daher, ich bleib sowieso am Ball 🙂
Gruss,
Oli
Ich entwickle gerade auch ein Framework,
und habe auch etliches von dir(und anderen) geklaut,
manche sachen fand ich sehr sympathisch andere gefielen mir nicht so.
hier siehst du meinen fortschritt, in der hoffnung das du vlt auch ein bisschen von mir lernen kannst, sowie ich es von dir konnte.
https://terrorhippiecrew.net/2010/02/mein-framework-inhaltsverzeichnis/
MfG
w13531
Kann es sein, dass mit deiner Seite was nicht in Ordnung ist? Ich meine das SSL-Zertifikat… Firefox vertraut dem nicht.
Bekomme ich nicht wenigstens einen Backlink? 😉 Immerhin hast du ja auch einen bekommen
jooo das ssl zert is selbst ausgestellt, darum mag das niemand weil hat keine CA unterschrieben hat 😀
hmm du bist mit bei mir in den gepublishten links drin
wie meinstn das mit dem backlink genau?
Das SSL-Zeug würde ich sofort rausnehmen, das macht schon einen sehr komischen Eindruck…
Wo finde ich die gepublishten links? 😉
im blogroll unter (php mvc framework), joo das finden die spammbots auch, naja wollts halt mal probieren, auch wegen wordpress login und plaintext und so 😀
Ach da, hab ich nicht gesehen 😉
Hab das mit dem SSL auch entsprechend geändert. Jeder der n bissl auf security steht, kanns einschalten 😀
Hey! Das ist super interssant! Wann geht es denn weiter? Bin schon sehr gespannt!! Gruß Sebastian
Hi,
es wird im Sommer erst weitergehen, wenn ich meinen Zivildienst absolviere 🙂 Bei mir steht in 2 Wochen Abitur an und danach habe ich ein paar Programmieraufträge. Danach wird das Framework weiterentwickelt und dokumentiert.
Freut mich, dass es dich interessiert!
MfG
Simon
Hallo Simon! Das ist echt schade, aber da kann man wohl nichts machen. Ich hänge an einigen Stellen und da muss ich mir wohl ne andere Lösung suchen! Viel Spaß beim Abi!! 😉 Gruß Sebastian
Hi
vielen Dank! Werd ich (nicht) haben 😛
Wo genau hängts denn?
MfG
Simon
Hmmm, ich denke ich bin zu blöd dazu. Ich habe schon viel mit PHP gemacht, aber nie so wirklich richtig strukturiert. Ich habe zwar nur eine index.php die immer aufgerufen wird und mit if else dann den Inhalt dazu. Ein paar Funktionen habe ich auch noch.
Jetzt wollte ich das ganze mal richtig schön sortiert aufbauen und nicht so ein durcheinander. Dein Konzept fand ich super, aber kann Deinen Erklärungen nicht immer folgen. Du erklärst immer Funktionen, aber wo ich das ganze ablege verstehe ich nicht.
Ich denke ich muss bei meinem Chaos bleiben und hoffen, dass dies nie jemand sieht. Aus irgend einem Grund kann ich mich das nicht richtig reindenken! :-((
Gruß
Sebastian
Die ersten Schritte in der OOP sind sehr schwer. Da hast du Recht. Ich denke, es ist mir nicht gelungen, es Anfängern gut zu vermitteln. Aber danke für deinen Kommentar! Ich bemühe mich in Zukunft, die Dinge besser zu erklären.
Die Funktionen legst du immer in den entsprechenden Klassen ab. Es ist so, dass ich hier manchmal nur die wesentlichen Stellen dieser Klassen abbbilde und es somit möglicherweise zu Missverständnissen kommt.
Das Tutorial ist eher so als Anregung gedacht, nicht zum 1:1 abschreiben 🙂
Aber du kannst dich doch erstmal am Zend Framework versuchen, das soll ganz gut sein!
MfG
Simon
Sehr gute Doku, hat mir auch sehr weiter geholfen. Aber um das zu verstehen müssen gewisse PHP/OOP Basics vorhanden sein. Allen N00bs würde ich da http://www.peterkropff.de/site/tutorials/php_oop.htm empfehlen.
Hallo Simon,
wirklich super diese neue Denkweise, die Du vielen hier bereitstellt. Ich hänge ebenfalls, trotz langer PHP Erfahrung, an einigen Stellen fest.
Z.b. Die FW_Controller_Abstract – Vielleicht finde ich den Code einfach nicht, ebenso weiß ich nicht wo ich diese hinpacken soll. Aber erstmal benötige ich eh den Sourcecode 😉
Hi,
es kann sein, dass FW_Controller_Abstract hier nicht zu finden ist. Das liegt daran, dass ich das Tutorial nach und nach geschrieben habe und so möglicherweise etwas verloren gegangen ist. Aber danke für den Hinweis! Es kommt auf meine ToDo-Liste
Den Code kann ich dir per SVN geben. Schreib mir einfach ne mail an simon@net-developers.de mit deinem XP-Dev-Nutzername 🙂
MfG
Simon
Hey,
Ich hab ein ‚Framework‘. Einige dateien davon entstanden durch das Tutorial, jedoch weis ich nicht, wie ich nun auf eine Komponente zugreifen kann. Also um beispielsweise News anzeigen zu können.
Wie erstelle ich dafür (request?) die anfrage? ?component=news aber
wie soll das framework denn wissen das er auf sowas reagieren soll und
wie binde ich überhaupt eine standard seite ein?
frontcontroller::getInstance()->run();
steht zwar in meiner Index aber ich benötige ja $request und $response.
Also meine denkweise hierfür ist einfach nicht passend xD
Eine Template klasse hab ich ..ist zwar nicht wirklich ans framework
angepasst aber meine view klasse ist ja auch noch nicht fertig aber ich muss ja erstmal wissen wie das ganze abläuft damit ich den rest allein machen kann (weitere controller etc.). Ich blick da irgendwie nicht durch ^^
hoffe kannst mir helfen,
mfg
$request und $response sind einfach so zu erstellen:
$request = FW_Http_Request::getInstance();
$response = FW_Http_Response::getInstance();
Das habe ich hier im Tutorial noch nicht drin, sorry.
Melde dich, wenn es weitere Probleme gibt 😉
Wann kommen endlich die restlichen Teile des Tutorials raus???
Wäre echt toll…
Ich arbeite bereits daran!
In 3 Tagen gibt es übrigens einen Artikel, auf dem man immer die jeweils neuste FW-Version herunterladen kann. Ein paar Wochen später kommt dann das Tutorial. Leider ist das echt viel Arbeit, deshalb geht das nicht so schnell.
Die aktuellste Version meines HMVC-Frameworks erhaltet ihr ab sofort immer hier: http://www.net-developers.de/blog/2011/02/13/download-info-shfw-hmvc-framework-in-php/
Heftig.. Noch gar nicht gesehen. Das geb ich mir die Tage…
Hallo Simon,
ich finde dein Tutorial sehr interessant und freue mich schon auf das fertige „Tutorial 2.0“ ;).
Bis dahin habe ich auch noch ein wenig mehr Kenntnisse in Sachen PHP, OOP, MVC etc. (da ich gerade mal seit 2 Monaten PHP im Selbststudium lerne).
Viele Grüße
Hi,
freut mich, wenn Dir meine Artikel gefallen!
Vielen Dank!
MfG
Simon
Stimmt, ihr habt recht aber ich bin mir da auch nicht soo ganz sicher, denn wir schreiben das ja 2012 also das land in dem Deutschland EMeister wird…
Hä? Was hat Fußball mit MVC zu tun?
Hallo,
ich bin ehrlich gesagt begeistert von deinem Tutorial. Ich habe mit diversen Template-Engines Erfahrungen sammeln können, bin aber eher Fan vom selfmade. Daher acker ich jetzt Stück für Stück dein sehr gut erläutertes Tutorial durch.
Da hier aber schon seit einiger Zeit keine Einträge mehr dazu gekommen sind, wollte ich mal fragen, ob du dies hier überhaupt noch hegst und pflegst? Mich würde schon interessieren, wie du z.B. deine SQL-Klasse gestaltet hast. Denn darum dreht sich ja nun auch fast jede php-Seite und wie andere Programmierer ihre Klassen schreiben und gestalten kann nur zur Weiterbildung dienlich sein 😉
Grüße,
Martin
Hallo Martin,
leider habe ich keine Zeit mehr für das Framework oder das Tutorial. Schon seit Jahren wird es nicht mehr weiterentwickelt.
Bezüglich SQL: Ich würde hier auf ein fertiges ORM wie Doctrine zurückgreifen. Ist wirklich angenehmer als selbst so etwas komplexes zu programmieren.
Hallo Simon
Hab gerade gesehen das du leider nicht dein Tutorial weiter führst.
Was ich sehr schade finde den ich benutze dein Tut. für mein Projekt.
Eine kleine Frage hast du das Projekt von deinem Tut noch? Wen ja, könntest du dies mal Hochladen ? Dies könnte gut als Basis verwendet werden 😀
Gruss Pascal
Hi,
leider sind die Dateien nicht mehr vorhanden. Tut mir leid!
Grüße
Simon
Warum machst du mit dem Blog nicht weiter?
Es ist genial wie Du Dein Wissen mittelst.
Brudi, mach mal weiter!
Bin ziemlich begeistert von diesem Tutorial hier. Danke sehr!
Bin leider gar nicht mehr in der PHP-Welt aktiv und arbeite somit nicht mehr am Framework, sorry.