Die neue TYPO3 Version 6

Neues in der TYPO3 Version 6

Ich besuchte das TYPO3 Camp Berlin vom  10.05.2013 – 12.05.2013 und habe im Folgendem wichtige Änderungen der neuen TYPO3 Version 6 zusammengefasst.

Allgemeines

Die neue TYPO3 Version 6 wurde am 27.11.2012 released. Diese TYPO3 Version basiert nun auf der PHP Version 5.3.7 – 5.4.x und der MySQL Version 5.1.x – 5.5.x.

File Abstraction Layer (FAL)

Viele unserer Kunden wünschen sich eine Datei Datenbank, die die Erfassung sämtlicher Informationen zu den gespeicherten Dateien möglichst zentral und strukturiert ermöglicht. Mit dem neu überarbeiteten File Abstraction Layer (FAL), welcher Schnittstellen für die Nutzung von externen Speichermedien wie WebDAV, Amazon S3 oder Dropbox beinhaltet, ist dies nun „out of the box“ möglich. Hinzu kommt, dass Dateien die mehrfach auf der Plattform genutzt werden, nicht mehr kopiert sondern nur noch als Referenzen behandelt werden. Zusätzlich können sämtliche Meta-Daten einer Datei zentral beim Hochladen in den „fileadmin“ über das Dateilisten Tool gespeichert werden. Diese Informationen können überall auf der Plattform bei der Verwendung der Datei, auch über Typoscript, abgerufen werden. Ferner ist es möglich Dateien über FAL zu gruppieren, dafür muss man nur eine neue Datensammlung anlegen und schon kann der Redakteur Dateien zu dieser Gruppe hinzufügen.

(TYPO3 Version 6: Dateilisten Tool Detailansicht)


Dieses Bild ist ein Screenshot der Detailansicht des Dateilisten Tools von TYPO3 Version 6

Höhere Code Qualität im TYPO3 Core

Eines der wichtigsten Ziele der Version 6 war die Optimierung und Modernisierung des Core-Quellcodes von TYPO3. Um dieses Ziel zu erreichen wurde der Quellcode zum Teil neu geschrieben oder vereinfacht.Jetzt läuft das System robuster. Um die Qualität des Quellcodes langfristig zu gewährleisten wurden über 5.000 automatisierte Tests (Unit Tests) implementiert und Qualitätsrichtlinien geschaffen. Die Integration neuen Core-Quellcodes erfolgt erst, wenn dieser mehrere Serien an Code-Style/Unit Tests erfolgreich absolviert hat.

Änderungen und Erweiterungen im TYPO3 Core

Mit der TYPO3 Version 6 wurde die Verwendung von Namespaces im Core implementiert. Alt bekannte Klassen wie t3lib_div werden durch Neue abgelöst. So ist zum Beispiel das Equivalent von t3lib_div die neue \TYPO3\CMS\Core\Utility\GeneralUtilit Klasse. Aus Kompatibilitätsgründen wurde eine Kompatibilitätsschicht (Compat Layer) eingeführt, der mit der Version 6.2 abgeschafft wird. So funktionieren Methodenaufrufe der Klasse t3lib_div nur noch bis Version 6.2. Ab Version 6.2 funktionieren dann nur die Methoden der neuen Klasse \TYPO3\CMS\Core\Utility\GeneralUtilit. Der Vorteil von Namespaces ist die sauberere Gruppierung von Quellcode und ermöglicht das einfachere automatische Laden von Klassen. Die Bezeichnungen der Klassennamen sind nun auch aussagekräftiger und ermöglichen neuen Entwicklern einen leichteren Einstieg in das System.

Im Zuge der Namespaces wurde zusätzlich der komplette Bootstrap des Systems überarbeitet. Bei einem Update ist darauf zu achten, dass die index.php von TYPO3 Version 6 verwendet wird. Sonst funktioniert der Bootstrap nicht.

Die in TYPO3 Version 4.7 als veraltet (deprecated) angesehene Funktionen wurden aus der Version 6 entfernt.

Die Handhabung von XCLASSES wurde überarbeitet. Der Code am Ende einer Klasse, der bei der alten XCLASS Implementierung genutzt wurde, entfällt. Die Konfiguration erfolgt über ein Subarray ([‘SYS’][‘Objects’]) der TYPO3_CONF_VARS. Diese Vorgehensweise ähnelt dem dependency injection Mechanismus von FLOW3.

    $TYPO3_CONF_VARS['Objects']['Namespace\\Classname'] = array(
        'className' => 'Namespace\\NewClassName',
    );

 

Die System Extensionsimulate static documents“ wurde vom Core entfernt, kann aber via TYPO3 Extension Repository (TER) wieder installiert werden.

Inkompatible Extensions

Aufgrund der bereits erwähnten Umstellungen und Optimierungen sind nicht mehr alle Extensions mit TYPO3 Version 6 kompatibel. Es gibt eine Tabelle mit allen Extensions (2234), die als inkompatibel erfasst sind (http://wiki.typo3.org/TYPO3_6.0_Incompatible_Extensions_A ). In dieser Tabelle wird erwähnt, welche deprecated Funktionen von der Extension genutzt werden, die in Version 6 nicht mehr verwendet werden können. Ich empfehle den Entwicklern bei einer Migration den Vergleich, ob die in ihrem System verwendeten Extensions in dieser Tabelle enthalten sind und ob es möglicherweise kompatible Updates der Extensions gibt. Wenn dem nicht so ist, muss man entweder selber einen Patch schreiben oder nach einer Alternative suchen.

Migration

Um eine Migration des bestehenden TYPO3s zu ermöglichen gibt es unter folgendem Link eine Tabelle mit Funktionen und deren neuen Alternativen (http://wiki.typo3.org/TYPO3_6.0_Extension_Migration_Tips). Eine voll automatische Migration ist sehr unwahrscheinlich,  da in den meisten TYPO3 Systemen die unterschiedlichsten Extension zum Einsatz kommen.

Fazit

TYPO3 Version 6 bietet viele neue Änderungen, die einem Entwickler oder Redakteur die Arbeit mit dem System deutlich erleichtern und neue Anwendungsmöglichkeiten bieten. Neue Funktionen werden lang ersehnte Wünsche erfüllen und liefern Platz, mit dem in Deutschland meist verwendeten CMS TYPO3, elegantere und saubere Lösungen von Problemstellungen zu entwickeln. Ich bin sehr gespannt, wie sich die Version 6 im Produktiveinsatz schlägt. Mein Tipp für Anwender: Es ist sinnvoll noch etwas zu warten und das System ausgiebig zu testen.

Quellen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.