Es ist endlich soweit: Magento 2.0 ist da!

30. November 2015 at 11:42
Magento 2.0, die neue eCommerce Software von Magento, startet voll durch

Magento 2.0, die neue eCommerce Software von Magento, startet voll durch

Endlich ist es soweit: Die führende eCommerce-Software Magento startet mit Magento 2.0 voll durch!
Am 16. November 2015 wurde der erste Stable Release von Magento veröffentlicht. Nachdem die Neuerungen vor vier Jahren angekündigt wurden und es lange Zeit eher schleppend voranging, wurde seit letztem Jahr die vorgegebene Timeline beeindruckend gut eingehalten.

Das Ergebnis ist das Onlineshop-System Magento 2, welches einerseits weiterhin auf die bewährte Modularität und Erweiterbarkeit der bisherigen Version aufbaut, andererseits auf Code Ebene komplett überarbeitet wurde und auf den neuesten Entwicklungsstandards aufbaut. Magento 2 kann also nicht als einfaches Update der alten Version gesehen werden, vielmehr wurde eine komplett neue Software mit grundlegend verändertem Entwicklungsansatz veröffentlicht.

Welche Vorteile bringt Magento 2:

Neben der sehr gut durchdachten Softwarearchitektur und dem durchgehend sehr hohen Anspruch an die Code Qualität, bietet Magento 2 eine Reihe von Features, die zu einer enormen Performancesteigerung, Stabilität, Skalierbarkeit und Flexibilität führen.

Die neue Softwarearchitektur:
Die komplett überarbeitete Softwarearchitektur trennt mithilfe von mehrschichtigen Layers das komplexe System voneinander. Damit sorgt die Architektur dafür, dass Abhängigkeiten aufgelöst sind, die funktionalen Einheiten wesentlich leichter zu beherrschen sind und das komplette System deutlich beschleunigt wurde.

Optimierung in der Performance:

  • Magento 2 ist kompatibel mit PHP7 (welches ebenfalls diesen Monat noch released werden soll) und der HHVM. Beide versprechen einen Performance Gewinn von ~ 100% gegenüber der aktuellen Stable PHP Version 5.6.
  • Im Gegensatz zu Magento 1 gibt es in der Community Edition jetzt auch einen Full Page Cache.
  • Neben einigen Optimierungen am Indexer gibt es jetzt auch in der Community Edition direkt die Möglichkeit, die Indizes asynchron aufzubauen.
  • Der Varnish Cache Web Accelerator wird in den Versionen 3.x und 4.x direkt unterstützt, wodurch die Ladezeiten von statischem Content um ein Vielfaches beschleunigt werden kann.
  • Der Redis Cache ist nur für Page und Backend Cache nutzbar, leider noch nicht für Session Handling.
  • Im Frontend punktet Magento 2 unter anderem mit einer effektiveren Bildkompression und durch Caching der JS Dateien im LocalStorage des Browsers.
  • Darüber hinaus ist ein Performance Toolkit vorhanden, um die Auswirkungen von Änderungen am Code auf die Performance direkt testen zu können.

Skalierbarkeit:
Als Highlight bietet die Enterprise Edition die Möglichkeit, die Datenhaltung des Katalogs und Checkouts auf unabhängige Datenbanken (und damit natürlich auch die Datenbank Server) auszulagern, was die Skalierbarkeit enorm verbessert. Weiter führt der zuvor bereits erwähnte Varnish Cache dazu, dass der Backend Server enorm entlastet wird, da nur noch der dynamische Content neu generiert wird und der Rest direkt vom Varnish Server zur Verfügung gestellt wird. Durch intelligentes Hole Punching werden hier nur einzelne Teile bzw. Blöcke der Seite vom Varnish Cache angefordert und in die vorher komplett vorgehaltenen Seiten eingesetzt.

Magento Enterprise vs. Community Edition:

Aus Magento 1 bekannt, gibt es die Magento Enterprise Edition (Magento EE) und Community Edition (Magento CE) Standard-Lizenzen. Im Kern baut die Enterprise Version auf der kostenfreien Community Version auf und ist mit zusätzlichen Extension bzw. Funktionen versehen. Zudem gibt es hierfür einen Support und eine Gewährleistung durch Magento. Viele Funktionen der Enterprise Version Magento 1 sind nun bereits in der Community Version Magento 2 integriert. Die neue Enterprise Version verfügt hingegen über viele neue Features, die sich stark von der Community Version abheben und die Bedürfnisse der Großhändler bedient. Welche Version für den jeweiligen Onlineshop verwendet werden sollte, gilt es je nach dem Umfang und den Ansprüchen an den Shop abzuwägen.

Relevanz für unsere Kunden:

Mit den grundlegenden Verbesserungen und der gesteigerten Qualität des Shopsystems gibt es vieles, was dafür spricht, einen Onlineshop in das neue System zu überführen. Je nach Komplexität des Onlineshops kann es auch Sinn machen, erst einmal noch auf Magento 1 zu setzen: Magento 1 soll noch mindestens 3 Jahre mit Sicherheitspatches versehen werden, jedoch kommen keine neuen Features mehr raus. Außerdem gibt es bereits Pläne in der Community die Features von Magento 2 nach Magento 1 zu portieren.
Wir empfehlen, nicht zu lange zu warten und sich bereits heute Gedanken über die Überführung und Umsetzung in Magento 2 zu machen. Die drei Jahre sind schnell vorbei und es bedarf einer gründlichen Planung wie Vorlaufzeit. Die ersten Onlineshops werden bei uns bereits in Magento 2 umgesetzt! Wir beraten Sie gerne!

Für unsere Entwickler ist durch Magento 2 der Anspruch in erster Linie gestiegen: Der Umstieg von Magento 1 ist je nach Komplexität des Shops, nicht gerade einfach. Magento stellt hier zwar Migrationstools zur Verfügung, allerdings müssen die Module trotzdem neu programmiert werden. Als Magento Entwickler findet man sich allerdings schnell in der grob ähnlichen Struktur von Magento 2 zurecht.
Für den Umstieg von Magento 1 auf Magento 2 wird eine sehr umfangreiche Dokumentation angeboten. Diese wird durch ein Team immer auf dem Laufenden gehalten und es werden dort auch jetzt schon sehr viele grundlegende Fragen geklärt. Darüber hinaus bietet Magento umfangreiche Trainings Programme an, um Firmen und Entwickler schnell und effizient in die Programmierung mit Magento 2 einzuarbeiten.

Weitere Infos über die Neuerungen für unsere Magento-Entwickler:

  • Das komplette System ist mit Tests abgedeckt: Es ist sehr einfach möglich Tests für eigene Module zu schreiben.
  • Dependency Injection:
    – verringert die Bindung zwischen den Klassen
    – erleichtert Änderungen an der vorhandenen Applikation, ohne den Core Code anfassen zu müssen
    – vereinfachtes Testing möglich.
  • Interceptor Pattern: Nachdem es in Magento 1 nur an bestimmten Stellen (Stichwort: Observer) möglich war, direkt in den Programmablauf einzugreifen, ohne die ursprüngliche Klasse zu verändern, kann jetzt, Mithilfe des implementierten Interceptor Patterns, jede beliebige public funtion abgefangen und das Ergebnis, sowie die Übergabeparameter verändert werden.
  • Für das Paket Management kommt der Composer zum Einsatz. Nachdem dieser von vielen schon für Magento 1 zur Installation von Paketen genutzt wurde, wird dieser nun komplett integriert. Der Composer führt zu wesentlich unkomplizierteren Update-Mechanismen und lässt somit auch auf regelmäßige Plattform-Updates von Magento hoffen.
  • Modulstruktur: Obwohl Magento 1 ein sehr modulares System ist, sind hier leider die Dateien für ein Modul stark in verschiedenen Ordnern verteilt. Das erschwert für Einsteiger erst einmal das Verständnis und hat außerdem die Bereitstellung von Modulen z. B. über Composer sehr kompliziert gemacht. In Magento 2 sind alle Moduldateien in einem Ordner. Außerdem ist es durch eine Änderung, die kürzlich umgesetzt wurde, jetzt sogar egal, wo dieser Ordner liegt.
  • Templates: Ab jetzt kann in einem Template ein beliebiges anderes Template als Parent angegeben werden. Dadurch ist man auch hier sehr flexibel und kann ein Template immer wieder für andere Stores anpassen.
  • CSS Preprocessing mit LESS.
  • Einhalten von PSR Standards z. B. für Autoloading, Logging und Codestyle.

Quellen:

https://entwickler.de/online/e-business/magento-2-191616.html?utm_source=fb&utm_medium=social
http://www.moeller-horcher.de/fileadmin/media/pressezentrum/netz98/2015/netz98_Hintergrundinformationen-zu-Magento2.pdf
http://magento.com/developers/magento2
http://t3n.de/news/magento-2-nur-wirklich-gute-zeug-610751/
http://t3n.de/news/magento-2-0-658174/