php.de

Zurück   php.de > php.de Intern > Beitragsarchiv > Adventskalender 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.12.2009, 00:00  
Adventskalenderöffner
 
Benutzerbild von Nikolaus 2.0
 
Registriert seit: 27.11.2008
Beiträge: 72
PHP-Kenntnisse:
Fortgeschritten
Nikolaus 2.0 ist einfach richtig nettNikolaus 2.0 ist einfach richtig nettNikolaus 2.0 ist einfach richtig nettNikolaus 2.0 ist einfach richtig nettNikolaus 2.0 ist einfach richtig nett
Standard 23: Hierarchisch Modell gestanden

23:
Das Thema HMVC wurde in den vergangenen Monaten sehr häufig und kontrovers diskutiert. Daher möchte sich der Nikolaus dem Thema annehmen und eine kleine Einfühung geben.

HMVC ist ― ähnlich dem Konzepten PAC ― eine Weiterentwicklung des bekannten MVC-Design-Pattern. Es beschreibt die Idee, einen definierten Bereich einer Software nicht nur in eine „MVC-Einheit“ zu kapseln, sondern in mehrere, die nach definierten Gesichtspunkten zusammenspielen.

Durch die Gliederung einer Software in weitere mehrere, kleine „MVC-Einheiten“ ergibt sich eine bessere Granularität der Software, was einerseits die Wiederverwendbarkeit von Komponenten potentiell steigert und andererseits die Möglichkeit schafft, Applikationen gemäß ihren Use Cases zu strukturieren.

Die konkrete Auslegung des Pattern ist dabei etwas komplizierter und nicht in einem Satz zusammenzufassen, denn hier ist eine Disziplin gefragt, die über die Anwendung eines einzelnen Pattern hinausgeht: the cooperation of design pattern. Es ist also zu entscheiden, welches Ziel bei der Implementierung verfolgt wird.

Nehmen wir ein abgeschlossenes Modul ― beispielsweise ein Gästebuch ― so besteht der Nutzen darin, dass die für das Modul definierten Use Cases nahezu direkt in „MVC-Einheiten“ abgebildet werden können. Das Anzeige-Element bedient sich beispielsweise des gleichen Models (= Zustand einer Applikation) wie das Element, das das Eingabe-Formular anzeigt. So kann man sich beispielsweise zu Nutzen machen, dass eine Applikation in sich üblicherweise immer mit den selben Daten umgeht.

Ein weiterer Aspekt ist die Kapselung von Funktionalitäten. Fasst der Entwickler eine mehrfach verwendete Funktion einer Software ein eine wiederverwendbare Einheit ab und kann er diese beliebig in andere Einheiten einsetzen, so lässt sich nicht nur Code sparen, sondern auch Komponenten wiederverwenden. Dies führt unweigerlich zu einer besseren Struktur und zu einer höheren Code-Qualität, da auch bewährte Komponenten gesetzt werden kann.

Entscheidend beim Einsatz dieses Pattern sind die Hilfsmittel! So gilt es, eine Umgebung bereitzustellen, in der die „MVC-Einheiten“ verwaltet werden (Stichwort: object lifecycle management) und Mechanismen zu etablieren, die es erlauben, viele solcher Elemente zu einer Gesamt-Applikation zu komponieren ohne explizite und direkte Abhängigkeiten zu erzeugen. Eine weitere Anforderung ist es, die geschaffene Umgebung so generisch wie möglich auszulegen, damit es keiner Anpassung für jede konkrete Web-Applikation bedarf.

HMVC ist demnach ein Pattern, das neben den bunten Vorteilen auch Nachteile mit sich bringt. Es braucht effektive Hilfsmittel! Wen das Thema mehr interessiert, kann die besinnliche Zeit dazu nutzen, etwas in unserem Software-Design-Forum zu schmökern.

Euer Nikolaus
Nikolaus 2.0 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Box Modell, CSS Darstellungs Problem. Kein Genie HTML, Usability und Barrierefreiheit 9 11.06.2009 13:00
Box Modell Problem zwischen Internet Explorer 6 und FireFox DonTermi HTML, Usability und Barrierefreiheit 5 07.12.2006 16:30
Suche Beispiele zum "One serves all" Modell &D ssm PHP-Fortgeschrittene 4 21.03.2006 16:14
[Erledigt] Wird mein Computer mit diesem Komponenten schneller ? Off-Topic Diskussionen 7 01.09.2004 12:59

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
hierarchisch modell, modell gestanden, php hierarchische pattern -nested, http://www.php.de/adventskalender-2009/62454-23-hierarchisch-modell-gestanden.html, hmvc with php, php hmvc, usecase in mvc, hmvc nachteile, hmvc php, gestanden modell, hmvc entwurfsmuster php, php guestbook use case, hmvc the cooperation of design pattern

Alle Zeitangaben in WEZ +1. Es ist jetzt 15:05 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum