Weitere Artikel aus dem Webentwickler Blog

Die Basisfunktionen des Joomla!-Frameworks teilen sich in verschiedene Klassen auf. Eine der wichtigsten ist JFactory, welche auf dem Factory-Entwurfsmuster beruht. Sie verwendet ihrerseits verschiedene Klassen, um uns die notwendigen Informationen und Funktionalitäten zu liefern.

Generell ist Joomla so definiert, dass diese Klassen keiner speziellen Bibliothek zugewiesen sind. Sie stehen uns auch jederzeit zur Verwendung im Quellcode zur Verfügung.

Das Fabrik-Muster "JFactory"

Diese Klasse initialisiert eine Reihe von anderen Klassen und stellt sie uns für unsere Arbeit als Programmierer zur Verfügung.

Aufgrund des Singleton-Entwurfsmusters, das hier zur Anwendung kommt,  wird in Joomla sichergestellt, dass alle Klassen, welche von JFactory initialisiert werden, nur einmal vorkommen. Oft werden wir Informationen zur Konfiguration von Joomla benötigen. Wie wir im in der Abbildung sehen, bietet uns das CMS dazu die Klassen JFrameworkConfig und JConfig an.

Natürlich können wir nun die Konfiguration direkt über diese Klassen abrufen. Aber es ist besser und auch strukturierter, wenn wir dies über eine Methode von JFactory erledigen. Damit haben wir einen definitiven Punkt des Abrufs und die Koppelung der beiden Konfigurationsklassen ist im Vergleich zu unserer Programmierung in den Komponenten oder Modulen schwach ausgeprägt. Dieser Standardaufruf erleichtert später die Wartung, da die Konfigurationsklassen ausgetauscht werden können, ohne dass unsere Erweiterungen geändert werden müssten.

Um zum Beispiel die Daten des aktuellen (aktiven) Benutzers von Joomla zu erfahren, können wir folgende Zeile verwenden:

$user =& JFactory::getUser();

In diesem Aufruf sind zwei interessante Details der Programmierung mit Joomla versteckt. Das erste ist der & -Operator. Da die Methode getUser() eine Referenz auf das Objekt (also die Instanz) des User-Objektes zurückgibt, übertragen wir diese mit dem Operator auf die Variable $user. Dadurch stellen wir sicher, dass das User-Objekt nur ein einziges Mal im Speicher existiert. Würden wir den &-Operator nicht verwenden, würden wir eine Kopie des Objektes in der Variablen ablegen und das Singleton-Entwurfsmusterverletzen.

Die Referenz auf das Objekt gibt uns noch einen weiteren Vorteil in der Entwicklung: Alle Änderungen, welche wir am User-Objekt durchführen, sind zentral in der Applikation bekannt. Dadurch haben wir konsistente Benutzerdaten für alle Komponenten, Module und Plugins während der Laufzeit von Joomla.

Ganzen Artikel lesen... 

Kundenkommentare
Social Bookmarks
elo-web bookmarken bei: Mr. Wong elo-web bookmarken bei: Webnews elo-web bookmarken bei: Icio elo-web bookmarken bei: Oneview elo-web bookmarken bei: Yigg elo-web bookmarken bei: Linkarena elo-web bookmarken bei: Digg elo-web bookmarken bei: Reddit elo-web bookmarken bei: Simpy elo-web bookmarken bei: StumbleUpon elo-web bookmarken bei: Netscape elo-web bookmarken bei: Furl elo-web bookmarken bei: Yahoo elo-web bookmarken bei: Blogmarks elo-web bookmarken bei: Diigo elo-web bookmarken bei: Technorati elo-web bookmarken bei: Newsvine elo-web bookmarken bei: Blinkbits elo-web bookmarken bei: Ma.Gnolia elo-web bookmarken bei: Smarking elo-web bookmarken bei: Netvouz elo-web bookmarken bei: Folkd elo-web bookmarken bei: Spurl elo-web bookmarken bei: Google elo-web bookmarken bei: Blinklist
URL zu dieser Seite
Einfach den Quelltext kopieren und auf Ihrer Webseite einbinden

Kontakt
Newsletter | Kontakt | RSS Feed
Warenkorb: 0 Artikel
Gesamtwert: EUR 0,00
Home Joomla!  Das Joomla!-Framework im Überblick - Teil II