Zend Framework
Buchausgabe: 39,90€
Download-Version: 34,90€
(Preis inkl. Mwst. )
| Autor(en): | Carsten Möhrke |
| Verlag: | Galileo Press |
| Version: | 1. Auflage, 2008 |
| Umfang: | 421 Seiten |
| Format: | PDF: 3,43MB |
| Gewicht: | 868 g |
| ISBN: | 3836210681 |
| Bestell-Nr.: | 83621068P |
| Artikeltyp: | E-Book |
Zend Framework ist von der Firma Zend Technologies entwickelt. Das Framework stellt fertige Klassen für Datenbanken, Model-View-Controlling, PDF-Erstellung, Suchfunktionen u.v.m. zur Verfügung. Das Buch bietet eine praxisbezogene Einführung in die Entwicklung von PHP-Anwendungen mit dem Framework. Alle Funktionen werden umfassend dargestellt. Immer stehen konkrete Anwendungsbeispiele im Vordergrund. So z. B. Benutzerverwaltung, Performancesteigerung etc.
Der Autor
Carsten Möhrke arbeitet seit 15 Jahren professionell im EDV-Umfeld. Er ist Inhaber der netviser Internet Beratung e.K. und als Internet-Programmierer, Dozent sowie Consultant tätig. In dieser Zeit hat er bereits viele erfolgreiche PHP-Projekte auf den Weg gebracht. Mit seiner Firma führt er außerdem viele Projekte im Bereich InDesign und XML durch.
Leseprobe:
No one has ever drowned in sweat.
– Lou Holtz, Football Coach
1 Der Model View Controller (S. 25-26)
Das Kernstück des Zend Frameworks sind die Klassen zur Umsetzung des MVCEntwurfsmusters. Die Abkürzung MVC steht für Model View Controller und beschreibt, wie eine Anwendung strukturiert werden kann. Das Zend Framework bringt hierbei eine große Menge Funktionalitäten mit, die Ihnen die Erstellung einer Applikation auf Basis eines MVC ermöglichen.
Zur Umsetzung eines MVC werden mehrere Klassen miteinander kombiniert, sodass in diesem Kapitel – anders als in anderen Kapiteln – mehrere Klassen gleichzeitig genutzt und erläutert werden.
Sie werden feststellen, dass das Thema recht komplex ist. Daher kann dieses Kapitel nicht alles erläutern. Dennoch denke ich, dass die wichtigen Inhalte hier abgebildet sind. Es kann aber auch nicht schaden, wenn Sie noch ein wenig in der Dokumentation stöbern. Sie finden dort noch viele hilfreiche Dinge wie beispielsweise die Helper.
Bevor ich auf den praktischen Teil eingehe, möchte ich zunächst die Theorie erläutern.
1.1 Die Theorie des MVC
Wie schon erwähnt, ist die Idee des Model View Controllers, eine Anwendung in verschiedene Teile, nämlich das Model, den View und den Controller, aufzugliedern. Lassen Sie mich mit dem letzten Teil, nämlich dem Controller beginnen. Der Controller ist derjenige Teil der Applikation, der auf Benutzereingaben reagiert, die Eingaben verarbeitet und dafür sorgt, dass die korrekten Seiten dargestellt werden.
Die eigentliche Darstellung der Daten wird vom View übernommen. Der View ist hierbei als eine abstrakte Komponente zu verstehen, da er sich aus mehreren Teilen zusammensetzt. Neben der intern genutzten View-Klasse wird auch noch ein Template, also eine Design-Vorlage, genutzt, die für die Darstellung der Daten verwendet wird.
Der Dritte im Bunde, das Model, ist für die Datenhaltung und -verwaltung verantwortlich. Hierbei handelt es sich um eine Komponente, die dafür zuständig ist, die genutzten Daten unter anderem zu lesen und zu speichern. Gerne wird hierbei auch von einem Datenmodell gesprochen, wobei das vielleicht ein wenig verwirrend ist, da es sich nicht um ein Modell im Sinne eines Entity-Relationship- Modells, sondern um eine konkrete Klasse handelt.
In den meisten Fällen finden Sie hier auch die Geschäftslogik. Die Geschäftslogik ist dafür zuständig Objekte und Vorgänge aus der realen Welt in die Programmierung umzusetzen. Das heißt, im Fall eines Shops könnte sich hier eine Klasse finden die dafür zuständig ist Bestellungen anzulegen und zu verwalten. Die Geschäftslogik im Model anzusiedeln macht Sinn, da sie sehr eng mit den Daten verknüpft ist. Beim Anlegen einer Bestellung müssen die Informationen beispielsweise in eine Datenbank geschrieben werden. Die Business-Logik stellt also einen weiteren Abstraktionslevel dar. Durch dieses Konzept haben Sie den Vorteil, dass der komplette Zugriff auf die Daten gekapselt ist. Im Controller müssen Sie also nur noch die Eingaben des Benutzers entgegen nehmen und sie an die Methoden der Model-Klassen übergeben. Durch diese klare Struktur wird der Code deutlich wartbarer und übersichtlicher.
Sollten Sie sich nun fragen, wie man Model und Controller trennscharf definiert, so ist das berechtigt. Die Idee hinter der Aufteilung ist, die Daten und Funktionalitäten zu kapseln. Das heißt, das Model muss so strukturiert sein, dass alles, was die Speicherung und das Auslesen betrifft, hierin enthalten ist. Möchten Sie die Daten in einer Datenbank abspeichern, so muss des Escapen von Sonderzeichen ein Teil des Models sein. Auch Methoden zum Berechnen von Preisen, der Verwaltung von Lagerbeständen und Ähnliches sind hier anzusiedeln, da diese Funktionalitäten zur Geschäftslogik gehören.
Die Aufbereitung der Daten für die Darstellung hingegen ist Teil des Controllers.

