10.09 2010
MVC mit PHP - Ein neues Tutorial
Kommentare
Warum schreibst du ein Tutorial über das MVC Pattern? Warum verwendest du nicht schon eine vorhandene Lösung wie z.B. vom Zend Framework?
http://framework.zend.com
http://framework.zend.com
#1
am
15.05.2008 14:56
Vielen Dank für die Verlinkung zu mir. Es freut mich, dass endlich auch mal ein Backlink von einer Seite kommt, den ich nicht selbst gesetzt habe.
Schade ist dabei nur, dass es beim MVC-Pattern bei mir ja (im Moment) nicht mehr weiter geht und die Leser daher kaum dazu angeregt werden immer mal wieder vorbeizuschauen.
Auf jeden Fall freue ich mich natürlich riesig, dass mein MVC-Tutorial nicht nur Suchende anlockt, wie die Statistik zeigt, sondern diesen auch wirklich helfen kann. Ich setze in einem neuen Blog-Eintrag mal einen Backlink zu dir, um deine Seite etwas zu stärken und die Verbindung anzuzeigen. :-)
Schade ist dabei nur, dass es beim MVC-Pattern bei mir ja (im Moment) nicht mehr weiter geht und die Leser daher kaum dazu angeregt werden immer mal wieder vorbeizuschauen.
Auf jeden Fall freue ich mich natürlich riesig, dass mein MVC-Tutorial nicht nur Suchende anlockt, wie die Statistik zeigt, sondern diesen auch wirklich helfen kann. Ich setze in einem neuen Blog-Eintrag mal einen Backlink zu dir, um deine Seite etwas zu stärken und die Verbindung anzuzeigen. :-)
#2
am
15.05.2008 23:57
@Radhad: Warum benutzen manche Menschen Linux, obwohl es eh Windows oder Mac gibt?
Aber im Ernst, um das Verständnis von MVC zu fördern.
Aber im Ernst, um das Verständnis von MVC zu fördern.
#3
am
20.05.2008 17:24
Danke fürs Tutorial!
Was mich jetzt noch interessieren würde:
wie benennt man Klassen, Dateien, Verzeichnisse (nach MVC)?
Im Beispiel mit ein paar Dateien ist es ja relativ einfach, aber wenn man 20 Klassen hat wirds schnell unübersichtlich.
Würde man es z. B. so machen:
Klasse1_Controller ist in controller/Klasse1.php
Klasse1_View ist in view/Klasse1.php
Klasse1_Model ist in model/Klasse1.php
oder nach Funktion (Bbeispiel bei Authentifizierung)
Auth_Controller in Auth/Auth.controller.php
Auth_View in Auth/Auth.view.php
Auth_Model in Auth/Auth.model.php
AuthBla_Controller in Auth/AuthBla.controller.php
AuthBla_View in Auth/AuthBla.view.php
AuthBla_Model in Auth/AuthBla.model.php
Gibt es dazu "Standards"?
Was mich jetzt noch interessieren würde:
wie benennt man Klassen, Dateien, Verzeichnisse (nach MVC)?
Im Beispiel mit ein paar Dateien ist es ja relativ einfach, aber wenn man 20 Klassen hat wirds schnell unübersichtlich.
Würde man es z. B. so machen:
Klasse1_Controller ist in controller/Klasse1.php
Klasse1_View ist in view/Klasse1.php
Klasse1_Model ist in model/Klasse1.php
oder nach Funktion (Bbeispiel bei Authentifizierung)
Auth_Controller in Auth/Auth.controller.php
Auth_View in Auth/Auth.view.php
Auth_Model in Auth/Auth.model.php
AuthBla_Controller in Auth/AuthBla.controller.php
AuthBla_View in Auth/AuthBla.view.php
AuthBla_Model in Auth/AuthBla.model.php
Gibt es dazu "Standards"?
#4
am
30.05.2008 10:16
P. S. oder noch verzweigter:
Auth_Controller in Auth/Controller/Auth.php
Auth_View in Auth/View/Auth.php
Auth_Model in Auth/Model/Auth.php
AuthBla_Controller in Auth/Controller/AuthBla.php
AuthBla_View in Auth/View/AuthBla.php
AuthBla_Model in Auth/Model/AuthBla.php
Nur das artet ja irgendwie aus ;-)
Auth_Controller in Auth/Controller/Auth.php
Auth_View in Auth/View/Auth.php
Auth_Model in Auth/Model/Auth.php
AuthBla_Controller in Auth/Controller/AuthBla.php
AuthBla_View in Auth/View/AuthBla.php
AuthBla_Model in Auth/Model/AuthBla.php
Nur das artet ja irgendwie aus ;-)
#5
am
30.05.2008 10:19
Naja, ich machs meistens so, dass ich das Ganze in Module aufteile.
Also ich schreibe eine Dispatcher-Klasse, die den Request entgegen nimmt und dann an den Controller des jeweiligen Moduls weitergibt.
Die Verzeichnisstruktur könnte dann ungefähr so aussehen:
index.php
classes/dispatcher.php
classes/..andere Standard-Klassen
module/blog/controller.php
module/blog/model.php
module/blog/view.php
module/blog/templates/..die Templates fürs Modul
module/content/controller.php
module/content/model.php
module/content/view.php
module/content/templates/..die Templates fürs Modul
module/andere module/...
Also das ist nur ein Vorschlag, aber so in etwa sieht bei meinen Projekten die Verzeichnisstruktur aus...
Ist natürlich Geschmackssache, ausprobieren und sehen wie man am Besten zurechtkommt...
Also ich schreibe eine Dispatcher-Klasse, die den Request entgegen nimmt und dann an den Controller des jeweiligen Moduls weitergibt.
Die Verzeichnisstruktur könnte dann ungefähr so aussehen:
index.php
classes/dispatcher.php
classes/..andere Standard-Klassen
module/blog/controller.php
module/blog/model.php
module/blog/view.php
module/blog/templates/..die Templates fürs Modul
module/content/controller.php
module/content/model.php
module/content/view.php
module/content/templates/..die Templates fürs Modul
module/andere module/...
Also das ist nur ein Vorschlag, aber so in etwa sieht bei meinen Projekten die Verzeichnisstruktur aus...
Ist natürlich Geschmackssache, ausprobieren und sehen wie man am Besten zurechtkommt...
#6
am
30.05.2008 11:03
Ah ok danke!
Hatte es von der Struktur auch so ähnlich angelegt, nur auf die Dispatcher-Klasse bin ich nicht gekommen ;-)
Hatte es von der Struktur auch so ähnlich angelegt, nur auf die Dispatcher-Klasse bin ich nicht gekommen ;-)
#7
am
02.06.2008 12:16
Ich finde dein Tutorial superklasse.
Könntest du aber noch auf das verarbeiten von Forumlaren eingehen. Wie der Controller nach dem drücken des Submit-Buttons arbeitet.
Das müsste dann ja hier irgendwie rein:
$this->template = !empty($request['view']) ? $request['view'] : 'default';
Könntest du aber noch auf das verarbeiten von Forumlaren eingehen. Wie der Controller nach dem drücken des Submit-Buttons arbeitet.
Das müsste dann ja hier irgendwie rein:
$this->template = !empty($request['view']) ? $request['view'] : 'default';
#8
am
25.07.2008 13:37
Hey, thanks for your Tutorial :)
I was just looking for some info to get a good kickstart and your tutorial is perfect. By the way, I'd also good like to have as Mannfred some hints about forms.
natürlich verstehe ich ein bisschen Deutsch, ich wollte nur kein blödes Wort hier schreiben :) ich lerne immer noch.
Danke
I was just looking for some info to get a good kickstart and your tutorial is perfect. By the way, I'd also good like to have as Mannfred some hints about forms.
natürlich verstehe ich ein bisschen Deutsch, ich wollte nur kein blödes Wort hier schreiben :) ich lerne immer noch.
Danke
#9
am
28.07.2008 17:20
Natürlich gibt es MVC-Frameworks wie Sand am Meer. Doch alle haben eine Recht lange Eingewöhnungszeit... und schwer wird es erst dann, wenn man eigene Spezial-Funktionalität benötigt. Also warum dann nicht selbst eine Art Framework schreiben, in der man weiß was jede Zeile macht?
Ich hab genau so ein Tutorial gesucht, weil ich mich mal wieder mit PHP beschäftigen will und da ich jetzt Informatik studiere, möchte ich das auf einem höhren Niveau (=MVC-Style) tun.
Vielen Dank!
Ich hab genau so ein Tutorial gesucht, weil ich mich mal wieder mit PHP beschäftigen will und da ich jetzt Informatik studiere, möchte ich das auf einem höhren Niveau (=MVC-Style) tun.
Vielen Dank!
#10
am
17.08.2008 23:48
Super, so ein Tutorial suche ich schon ewig. Sehr gut geschrieben.
Ich schreibe mir gerade noch eine Router-Klasse dazu.
Danke ;)
Ich schreibe mir gerade noch eine Router-Klasse dazu.
Danke ;)
#11
am
29.09.2008 10:36
Ich hätte noch mal eine Frage ... ich habe mir nun 2 Module geschrieben. Jedes hat sein eigenen Model, View und Controll.
Wie füge ich diese beiden Module auf einer Page zusammen?
Wie füge ich diese beiden Module auf einer Page zusammen?
#12
am
01.10.2008 15:54
Wenn ich mich noch richtig erinnere - ich hatte leider die letzten Wochen nie Zeit etwas zu Programmieren - sieht das MVC-Pattern für jede aufgerufene Seite genau ein Model-View-Controller-Paar vor. Beim Zend-Framework ist dies insofern gebrochen, als man mehrere Models für eine Seite verwenden kann.
Um sie zusammenzufügen, könntest du eine der beiden Klassen ableiten und die Methoden der anderen Klasse so dazuschreiben. PHP unterstützt leider keine Mehrfachvererbung :(
Die View musst du dann auch neu schreiben und die Implementierung der Models kenne ich bei dieser Umsetzung nun nicht... Eventuell gilt auch hier: Vererben + Rest reinschreiben
Ich hoffe, dass ich helfen konnte.
Freundliche Grüße
Stefan
Um sie zusammenzufügen, könntest du eine der beiden Klassen ableiten und die Methoden der anderen Klasse so dazuschreiben. PHP unterstützt leider keine Mehrfachvererbung :(
Die View musst du dann auch neu schreiben und die Implementierung der Models kenne ich bei dieser Umsetzung nun nicht... Eventuell gilt auch hier: Vererben + Rest reinschreiben
Ich hoffe, dass ich helfen konnte.
Freundliche Grüße
Stefan
#13
am
01.10.2008 18:02
@soyo
Du lädst ganz einfach deinen Controller (der dann auf dein Model zugreift). Warum hast du eine eigene View implementiert? Benutz doch die schon vorhandene Template-View.
@lemme.at
Gutes Tutorial! Ob es Sinn macht den Model static zu implementieren, kann man streiten..
Du lädst ganz einfach deinen Controller (der dann auf dein Model zugreift). Warum hast du eine eigene View implementiert? Benutz doch die schon vorhandene Template-View.
@lemme.at
Gutes Tutorial! Ob es Sinn macht den Model static zu implementieren, kann man streiten..
#14
am
04.10.2008 22:51
Die Methoden zum Laden der Objekte einer Klasse gehören eben zur Klasse und sollten daher auch static sein... anders natürlich mit den Eigenschaften eines spezifischen Objektes.
#15
am
24.10.2008 13:01
Hallo!
Ich kenne noch ein weiteres MVC-Tutorial. Das stammt von mir selbst. Hier gehts zur Artikelübersicht: http://www.net-developers.de/2008/09/23/mein-eigenes-mvc-framework-artikelubersicht/
Das Tutorial wird momentan überarbeitet und erweitert. Der Code kann hier heruntergeladen werden: http://www.net-developers.de/2008/12/27/aktuelle-version-des-mvc-frameworks-zum-download/
Viel Spass damit!
Würde mich freuen, wenn du mein Tutorial auch hier verlinken würdest:
http://tutorials.lemme.at/mvc-mit-php/index.html#quellen
MfG
Simon
Ich kenne noch ein weiteres MVC-Tutorial. Das stammt von mir selbst. Hier gehts zur Artikelübersicht: http://www.net-developers.de/2008/09/23/mein-eigenes-mvc-framework-artikelubersicht/
Das Tutorial wird momentan überarbeitet und erweitert. Der Code kann hier heruntergeladen werden: http://www.net-developers.de/2008/12/27/aktuelle-version-des-mvc-frameworks-zum-download/
Viel Spass damit!
Würde mich freuen, wenn du mein Tutorial auch hier verlinken würdest:
http://tutorials.lemme.at/mvc-mit-php/index.html#quellen
MfG
Simon
#16
am
07.01.2009 00:29
Ich finde das Tutorial super. Es zeigt einfach und kompakt das Zuammenspiel der einzelnen MVC Komponenten und das Laden von "Untertemplates" in ein "Haupttemplate". Momentan mache ich mich daran, das Model für Datenbankabfragen "aufzubohren" und ein Session-Handling einzubauen. Aber vom Prinzip her finde ich es perfekt :) Super Arbeit. Danke, dass Du so etwas zur Verfügung stellst!
Rico
Rico
#17
am
16.01.2009 14:10
Hi,
diese Frage hat nichts mit dem Tutorial an sich zu tun.
Mich würde interessieren, was für ein Plugin du fürs Syntax-Highlighting verwendest.
MfG
Simon
diese Frage hat nichts mit dem Tutorial an sich zu tun.
Mich würde interessieren, was für ein Plugin du fürs Syntax-Highlighting verwendest.
MfG
Simon
#18
am
27.07.2009 13:39
guckst du hier ;)
http://webcode.lemme.at/archives/22-Syntaxhighlighter-fuer-Serendipity.html
http://webcode.lemme.at/archives/22-Syntaxhighlighter-fuer-Serendipity.html
#19
am
28.07.2009 18:40
Hallo
Ich verstehe nicht, wie man Dein Programm im Browser aufruft und wie der Zusammenhang mit dem Request ist; kannst Du mir das an einem Beispiel zeigen?
Gruss Hans-Ulrich (uli)
Ich verstehe nicht, wie man Dein Programm im Browser aufruft und wie der Zusammenhang mit dem Request ist; kannst Du mir das an einem Beispiel zeigen?
Gruss Hans-Ulrich (uli)
#20
am
05.09.2009 17:03
@Hans-Ulrich: Du brauchst dazu einen Webserver mit PHP 5 auf den du das hochladen kannst, um das Skript zu verwenden bzw. zu testen.
Ich denke dir fehlen da einige Basics, am besten ist es wohl hier anzufangen: http://www.schattenbaum.net/php/
Ich denke dir fehlen da einige Basics, am besten ist es wohl hier anzufangen: http://www.schattenbaum.net/php/
#21
am
05.09.2009 17:44
Hallo,
wie kann ich denn, wenn ich z.b. ein Formular speichere und das Script fertig ist die Klasse neu laden? Also das die selbe Seite wieder neu geladen wird.
wie kann ich denn, wenn ich z.b. ein Formular speichere und das Script fertig ist die Klasse neu laden? Also das die selbe Seite wieder neu geladen wird.
#22
am
04.10.2009 14:27
Hallo,
wie kann ich die diplay() Klasse reloaden z.b. nach einem Formular versand?
Mfg benni
wie kann ich die diplay() Klasse reloaden z.b. nach einem Formular versand?
Mfg benni
#23
am
14.10.2009 14:04
Versteh deine Frage nicht ganz...
display() ist eine Methode des Controllers, keine Klasse.
Wenn du das Formular abschickst wird ja die ganze Applikation neu geladen, sprich der Controller wird neu aufgerufen...
display() ist eine Methode des Controllers, keine Klasse.
Wenn du das Formular abschickst wird ja die ganze Applikation neu geladen, sprich der Controller wird neu aufgerufen...
#24
am
14.10.2009 17:41
thx für das coole tutorial! habs jetzt endlich kapiert :-)
#25
am
25.10.2009 15:26
Ich habe mal das Tut probiert. Funktioniert soweit ganz gut. Nur das Template macht mir Probleme. ich wollte damit XML ausgeben aber
wirft bei mir einen syntax fehler.
was kann ich da machen?
wirft bei mir einen syntax fehler.
was kann ich da machen?
#26
am
09.11.2009 15:03
Lol, wie geil ist das denn?
Du schreibst überhaupt keinen Code und erwartest, dass wir hellsehen können?
Du schreibst überhaupt keinen Code und erwartest, dass wir hellsehen können?
#27
am
09.11.2009 17:02
ha ha ... super ... ja hellsehen wäre auch nicht schlecht ... den code hat der parser rausgehaun.
war im prinzip blos n doctype für xml 1.0 ...
der code ist genau wie im tutorial nur eben das template von html nach xml geändert ... schon gings nicht mehr
war im prinzip blos n doctype für xml 1.0 ...
der code ist genau wie im tutorial nur eben das template von html nach xml geändert ... schon gings nicht mehr
#28
am
10.11.2009 16:36
Hallo,
Ich find das Tutorial super.
Allerdings denke ich, dass man ja schlecht alles in eine controller.php schreiben kann.
Oben wurde was von einer Dispatcherklasse geschrieben. Ist es möglich mir mal zu zeigen, wie die aussieht?
Gruß Martin
Ich find das Tutorial super.
Allerdings denke ich, dass man ja schlecht alles in eine controller.php schreiben kann.
Oben wurde was von einer Dispatcherklasse geschrieben. Ist es möglich mir mal zu zeigen, wie die aussieht?
Gruß Martin
#29
am
18.02.2010 15:07
Hey,
super tolles Tutorial.
Ich muss nämlich ein Plugin für Wordpress schreiben. Dann MVC zu nutzen ist schonmal eine super Grundlage.
Vielen Dank!
super tolles Tutorial.
Ich muss nämlich ein Plugin für Wordpress schreiben. Dann MVC zu nutzen ist schonmal eine super Grundlage.
Vielen Dank!
#30
am
28.03.2010 14:41
Danke, hat geholfen
#31
am
10.04.2010 18:47
Das Tutorial ist äusserst hilfreich,
* weil es die Funktionsweise MVC anhand eines konkreten Beispiel direkt auszuprobieren gestattet,
* weil es nur so kompliziert wie nötig ist und nicht gleich alle erdenklichen Spezialfälle mit darstellen will. Nicht so abschreckend abstrakt wie http://www.onlamp.com/pub/a/php/2005/09/15/mvc_intro.html.
Habe nichts runtergeladen, sondern abgetippt, nachvollzogen, dabei gelernt und - natürlich - Fehler auf der Website(!) gefunden:
1) Model-Skript, line #31:
da muss es nicht "$this->entries" heissen, sondern: "self::$entries"
2) Controler-Skript, line #13:
!emptyempty muss heissen !empty
Das Template "default.php", so wie auf der Webseite dargestellt, enthält die Sequenz "«?php echo $entry['id'] ?»". DAS KLAPPT NICHT, weil das Array $entry keinen Eintrag "id" enthält.
Um den Array-Index zu verwenden, muss ein anderer Weg beschritten werden. Dazu ist die foreach-Schleife leider ungeeignet. Ich habe eine for-Schleife benutzt:
------
reset($this->_['entries']);
for ($i=0; $i_['entries']); $i++) {
echo "«h2»«a href='?view=entry&id=".key($this->_['entries'])."'»";
echo $this->_['entries'][$i]['title']."«/a»«/h2»";
echo "«p»".$this->_['entries'][$i]['content']."«/p»";
next($this->_['entries']);
}
// Damit es hier richtig dargestellt wird, habe ich die spitze Klammer auf/zu der HTML-Tags ersetzt durch « »
------
Gruss Ralph.
* weil es die Funktionsweise MVC anhand eines konkreten Beispiel direkt auszuprobieren gestattet,
* weil es nur so kompliziert wie nötig ist und nicht gleich alle erdenklichen Spezialfälle mit darstellen will. Nicht so abschreckend abstrakt wie http://www.onlamp.com/pub/a/php/2005/09/15/mvc_intro.html.
Habe nichts runtergeladen, sondern abgetippt, nachvollzogen, dabei gelernt und - natürlich - Fehler auf der Website(!) gefunden:
1) Model-Skript, line #31:
da muss es nicht "$this->entries" heissen, sondern: "self::$entries"
2) Controler-Skript, line #13:
!emptyempty muss heissen !empty
Das Template "default.php", so wie auf der Webseite dargestellt, enthält die Sequenz "«?php echo $entry['id'] ?»". DAS KLAPPT NICHT, weil das Array $entry keinen Eintrag "id" enthält.
Um den Array-Index zu verwenden, muss ein anderer Weg beschritten werden. Dazu ist die foreach-Schleife leider ungeeignet. Ich habe eine for-Schleife benutzt:
------
reset($this->_['entries']);
for ($i=0; $i_['entries']); $i++) {
echo "«h2»«a href='?view=entry&id=".key($this->_['entries'])."'»";
echo $this->_['entries'][$i]['title']."«/a»«/h2»";
echo "«p»".$this->_['entries'][$i]['content']."«/p»";
next($this->_['entries']);
}
// Damit es hier richtig dargestellt wird, habe ich die spitze Klammer auf/zu der HTML-Tags ersetzt durch « »
------
Gruss Ralph.
#32
am
17.05.2010 18:35
Hi,
ich habe Anfang 1978 mit dem programmieren auf einem PET 2001 begonnen. Ich habe den bitteren Weg der eigenen Fehler gehen müssen, da es noch keine Hilfen wie dieses Internet gab. Universitäten welche Informatik lehrten, grins, gab es auch nicht. Es gab gar nichts. Wir mußten uns alles selbst lehren. Ich habe die gesamte Entwicklung der Computerprogrammierung durch gemacht, praktisch alle Sprachen (So um die 30 Stück) gelernt. Ich habe vieles aus meinen Fehlern gelernt.
Und nun dieser Schwachsinn? M V C
Wollen die damit das Rad noch einmal neu erfinden? Ich habe mir seit langer Zeit einen Stil angewöhnt, der diesen Aufbau hat (und ich habe ihn nicht MVC genannt), wenn es um Webprogrammierung, ja auch um andere Arten der Datenbankprogrammierung geht. Es ist doch normal für einen guten Programmierer Dinge zu trennen welche zu trennen sind. Für mich ist dieses MVC nur Blabla. Ich denke, daß jeder Programmierer welcher eine gesunde Logik hat, sich selbst so ein Modell entwickeln kann. Ich habe im Jahr 1985 damit angefangen, alle Funktionen extern zu verwalten und zu klassifizieren, in Objekte umzuwandeln, lange Zeit bevor die OOP in Mode kam. Ich habe diese sortiert in Datenbankklassen usw. Ich habe bereits im Jahr 1985 dieses System, welches modernerweise nun MVC genannt wird, in vielen Projekten benutzt um Übersicht über wirklich sehr große Projekte zu haben.
Ich bin entweder zu doof oder zu verkalkt, aber ich verstehe nicht was dieses Geplapper nach MVC soll?
Was wollen uns die großen Weisen damit lehren? Sagt es mir, ich bin neugierig. Ist MVC eine neue Religion? Oder soll es uns dummen Programmierern den Weg weisen?
Ich habe tausende Bücher übers programmieren gelesen, von Leuten welche keine Ahnung hatten, was für einen Schwachsnn sie geschrieben haben. Es gab auch viele gute Bücher. Aber ich bin auch heute noch der Meinung: Genauso wie jeder seine Vorlieben für verschiedenes Essen hat, so entwickelt auch jeder seinen eigenen Programmierstil. Damit meine ich jetzt natürlich nicht die Spaghetticode-Programmierer sondern die Programmierer, welche sich vorher hinsetzen und wirklich nachdenken wie sie das ganze aufbauen. Und da gibt es viele Wege, welche zum Ziel führen. Es muß nicht MVC sein. Oft ist es sogar eine MVC-Logik, aber die Programmierer wissen gar nicht daß sie dieser Logik folgen.
Ich habe dieses Tutorial, welches übrigens wirklich Klasse (aber evt. totaler nonsens) ist, genau durchgelesen. Mir ist die Logik klar, aber was soll das? Heute heißt es MVC, morgen XYZ und übermorgen QUIRX?
Wann kommt der nächste moderne Schwachsinn, welcher eine schon lange da gewesene Logik als supermodern verkauft?
Klärt mich auf.
Schöne Grüße an alle von einem Programmiererdinosaurier der ersten Stunden
Frank Meier
ich habe Anfang 1978 mit dem programmieren auf einem PET 2001 begonnen. Ich habe den bitteren Weg der eigenen Fehler gehen müssen, da es noch keine Hilfen wie dieses Internet gab. Universitäten welche Informatik lehrten, grins, gab es auch nicht. Es gab gar nichts. Wir mußten uns alles selbst lehren. Ich habe die gesamte Entwicklung der Computerprogrammierung durch gemacht, praktisch alle Sprachen (So um die 30 Stück) gelernt. Ich habe vieles aus meinen Fehlern gelernt.
Und nun dieser Schwachsinn? M V C
Wollen die damit das Rad noch einmal neu erfinden? Ich habe mir seit langer Zeit einen Stil angewöhnt, der diesen Aufbau hat (und ich habe ihn nicht MVC genannt), wenn es um Webprogrammierung, ja auch um andere Arten der Datenbankprogrammierung geht. Es ist doch normal für einen guten Programmierer Dinge zu trennen welche zu trennen sind. Für mich ist dieses MVC nur Blabla. Ich denke, daß jeder Programmierer welcher eine gesunde Logik hat, sich selbst so ein Modell entwickeln kann. Ich habe im Jahr 1985 damit angefangen, alle Funktionen extern zu verwalten und zu klassifizieren, in Objekte umzuwandeln, lange Zeit bevor die OOP in Mode kam. Ich habe diese sortiert in Datenbankklassen usw. Ich habe bereits im Jahr 1985 dieses System, welches modernerweise nun MVC genannt wird, in vielen Projekten benutzt um Übersicht über wirklich sehr große Projekte zu haben.
Ich bin entweder zu doof oder zu verkalkt, aber ich verstehe nicht was dieses Geplapper nach MVC soll?
Was wollen uns die großen Weisen damit lehren? Sagt es mir, ich bin neugierig. Ist MVC eine neue Religion? Oder soll es uns dummen Programmierern den Weg weisen?
Ich habe tausende Bücher übers programmieren gelesen, von Leuten welche keine Ahnung hatten, was für einen Schwachsnn sie geschrieben haben. Es gab auch viele gute Bücher. Aber ich bin auch heute noch der Meinung: Genauso wie jeder seine Vorlieben für verschiedenes Essen hat, so entwickelt auch jeder seinen eigenen Programmierstil. Damit meine ich jetzt natürlich nicht die Spaghetticode-Programmierer sondern die Programmierer, welche sich vorher hinsetzen und wirklich nachdenken wie sie das ganze aufbauen. Und da gibt es viele Wege, welche zum Ziel führen. Es muß nicht MVC sein. Oft ist es sogar eine MVC-Logik, aber die Programmierer wissen gar nicht daß sie dieser Logik folgen.
Ich habe dieses Tutorial, welches übrigens wirklich Klasse (aber evt. totaler nonsens) ist, genau durchgelesen. Mir ist die Logik klar, aber was soll das? Heute heißt es MVC, morgen XYZ und übermorgen QUIRX?
Wann kommt der nächste moderne Schwachsinn, welcher eine schon lange da gewesene Logik als supermodern verkauft?
Klärt mich auf.
Schöne Grüße an alle von einem Programmiererdinosaurier der ersten Stunden
Frank Meier
#33
am
10.06.2010 23:46
Nicht unbedingt das aller beste Beispiel Tutorial aber es hat sein Ziel erreicht! ^^
Hab wohl endlich das MVC prinzip verstanden auch wenn ich immer noch nicht verstehe warum die index nie das Design enthält ...
Und in sachen "Warum das Rad neu erfinden". Ganz einfach: Man lernt nichts durch fertiges, sondern nur durch unfertiges ;)
Hab wohl endlich das MVC prinzip verstanden auch wenn ich immer noch nicht verstehe warum die index nie das Design enthält ...
Und in sachen "Warum das Rad neu erfinden". Ganz einfach: Man lernt nichts durch fertiges, sondern nur durch unfertiges ;)
#34
am
11.06.2010 22:13
Ich wollte ja nur darauf hinwesien, daß dieses MVC schon uralt ist. Ich glaube seit 1979 oder so. Es ist jetzt nur verkompliziert wieder als Coverversion auf dem Markt.
Ich bin übrigens sehr froh daß es nun Internet gibt. Leute wie Thomas hier sind wirklich wichtig. Es hat sich gezeigt daß wir Programmierer eine Klasse Gruppe sind. Soviel Hilfsbereitschaft, unglaublich. Ich bin wirklich stolz Programmierer zu sein und Leute wie Euch um mich zu wissen. Ihr führt unsere Anfänge klasse weiter. Ihr seid lernbegierig und hiflsbereit ohne Ende. Sowas muß man erst mal in anderen Communities finden.
Ich bin mir sicher daß die neue Programmiergeneration noch großartige Sachen zustande bringen wird, weil sich alle irgendwie hochpuschen und Ideen vermitteln. Wir sind früher wrklich manchmal 2-3 Tage vor einem Problem gesessen, es gab keine Hilfen, keine Bücher (oder schlechte), Heute ist es wirklich besser.
Schöne Grüße (auch an Dich hier, Thomas)
Frank Meier
Ich bin übrigens sehr froh daß es nun Internet gibt. Leute wie Thomas hier sind wirklich wichtig. Es hat sich gezeigt daß wir Programmierer eine Klasse Gruppe sind. Soviel Hilfsbereitschaft, unglaublich. Ich bin wirklich stolz Programmierer zu sein und Leute wie Euch um mich zu wissen. Ihr führt unsere Anfänge klasse weiter. Ihr seid lernbegierig und hiflsbereit ohne Ende. Sowas muß man erst mal in anderen Communities finden.
Ich bin mir sicher daß die neue Programmiergeneration noch großartige Sachen zustande bringen wird, weil sich alle irgendwie hochpuschen und Ideen vermitteln. Wir sind früher wrklich manchmal 2-3 Tage vor einem Problem gesessen, es gab keine Hilfen, keine Bücher (oder schlechte), Heute ist es wirklich besser.
Schöne Grüße (auch an Dich hier, Thomas)
Frank Meier
#35
am
11.06.2010 23:12
Hallo,
das ist echt ein gutes Tutorial. Vielen Dank dafür.
Eine Frage zur MVC-Architektur habe ich noch: In der View werden die Daten angezeigt die ich im Model "generiere". Ich kann die Daten aber nur über den Controller an die View "binden". Ist es möglich die Daten vom Model direkt in der View zur Verfügung zu haben, ohne den Schritt der Zuweisung über den Controller zu gehen?
das ist echt ein gutes Tutorial. Vielen Dank dafür.
Eine Frage zur MVC-Architektur habe ich noch: In der View werden die Daten angezeigt die ich im Model "generiere". Ich kann die Daten aber nur über den Controller an die View "binden". Ist es möglich die Daten vom Model direkt in der View zur Verfügung zu haben, ohne den Schritt der Zuweisung über den Controller zu gehen?
#36
am
09.07.2010 17:23
Trackbacks
Brati-Blog hilft bei MVC-Tutorial
Wie ich heute in meiner Statistik gesehen habe, hat ein anderer PHP'ler mein MVC-Tutorial als Basis für ein eigenes Tutorial verwendet, welches zumindest strukturell hervorragend gemacht wurde. Es ist VIEL übersichtlicher als bei mir, was sicherlich an der ...
Wie ich heute in meiner Statistik gesehen habe, hat ein anderer PHP'ler mein MVC-Tutorial als Basis für ein eigenes Tutorial verwendet, welches zumindest strukturell hervorragend gemacht wurde. Es ist VIEL übersichtlicher als bei mir, was sicherlich an der ...
Weblog: Brati-Blog
Aufgenommen: Mai 16, 00:01
Aufgenommen: Mai 16, 00:01
Super MVC Tutorial
Schon lange habe ich versucht in PHP auf die etwas Fortschrittliche Methode des MVC (Model, View, Controll) zurück zu greifen. Diese Methode hat den Vorteil, das man auch größere Projekte relativ einfach Verwalten kann. Allerdings hatte ich irgendw...
Schon lange habe ich versucht in PHP auf die etwas Fortschrittliche Methode des MVC (Model, View, Controll) zurück zu greifen. Diese Methode hat den Vorteil, das man auch größere Projekte relativ einfach Verwalten kann. Allerdings hatte ich irgendw...
Weblog: André Blogt
Aufgenommen: Mär 22, 18:31
Aufgenommen: Mär 22, 18:31
