Think

Umbraco mit .Net oder
alles neu mit Umbraco 9

Autor

David Brendel
Senior Software Developer
SYZYGY Techsolutions

Lesedauer
4 Minuten

Publiziert
14.01.2022

Mit Umbraco 9 verwendet Umbraco endlich .Net! Moment, aber eigentlich war Umbraco doch schon immer ein .Net basiertes CMS, oder? Jein. Dank der kleinen Namensverwirrung, die Microsoft dem Framework spendiert hat. Bis Version 8.x fußte Umbraco auf dem .Net Framework, also dem “alten“, Windows basierten Framework. Umbraco 9 basiert nun auf .Net 5 dem Nachfolger von .Net Core. So viel zum Namen des Frameworks. Aber was genau macht diesen Schritt so wichtig? Was sind die Vorteile des Framework-Wechsels? Und vor allem, was ändert sich für uns Entwickler:innen?

Warum der Umstieg?

Der wichtigste Punkt ist hier natürlich die Zukunftssicherheit, die mit dem neuen Framework kommt. Das „alte“ .Net Framework wird von Microsoft nicht mehr weiterentwickelt. Somit muss, auf kurz oder lang, auf das neue Framework gewechselt werden. Allerdings bietet der Wechsel nicht nur Zukunftssicherheit. .Net Core wurde von Microsoft komplett neu entwickelt und hat dadurch einen massiven Performance-Boost bekommen und ist plattformübergreifend. Das bedeutet, dass Entwickler:innen nicht mehr nur unter Windows entwickeln können, sondern auch unter Linux und MacOS. Gleichzeitig ist es auch möglich Umbraco unter Linux zu hosten. Das hat natürlich Vorteile was Kosten angeht, die man für Hosting ausgibt. Gleichzeitig ist es auch einfach Umbraco in Docker Containern zu hosten, falls man das möchte.

Was sind die Änderungen?

Generell hat sich einiges in Umbraco 9 getan. Allerdings beschränken sich diese Änderungen vor allem auf den Code und wie Entwickler:innen mit dem Code arbeiten.

Zum Beispiel wurde mehr auf native Microsoft-Abstraktionen gesetzt. Zum Beispiel Logging: Es wird nach wie vor Serilog verwendet, die unterliegende Abstraktion im Code basiert aber auf den Microsoft-Abstraktionen.

Dependency Injection ist nun ein First Class Citizen in Umbraco 9 und kann überall verwendet werden. Auch dies basiert auf den Microsoft-Abstraktionen.

Weiter Beispiele sind:

  • Benutzer- und Mitgliedsauthentifizierung: Für User und Member werden nun ASP .Net Identity verwendet. Der veraltete Membership Provider wurde entfernt.
  • Installation: Umbraco bietet für Umbraco 9 ein neues .Net-Template an. Mit diesem kann ein neues Umbraco 9 Projekt initialisiert und aufgesetzt werden.

Die Umstellung unserer .Net basierten Content Management Systeme Umbraco und Optimizely (Epi) auf .Net Core ist ein wichtiger Schritt in Richtung Zukunftsicherheit.

Marc Zollingkoffer
Director Software Engineering – SYZYGY Techsolutions

Was bleibt gleich?

Wie bereits angesprochen sind viele Dinge gleichgeblieben. Das Datenbank Schema wurde nicht angefasst. Damit ist es möglich ein existierendes Projekt einfacher auf Umbraco 9 zu migrieren, indem dieselbe Datenbank verwendet werden kann. Auch blieb das Backoffice unangetastet und basiert immer noch auf AngularJS. Weitere Modifikationen in der Architektur und Verbesserungen sollen in späteren Versionen folgen. An diesen Änderungen wird allerdings parallel und unabhängig zu Umbraco gearbeitet. Ein Beispiel dafür wäre die neue UI-Library die aktuell entwickelt wird. Diese gründet auf Lit und damit auf der Web-Components Technologie. Gleichzeitig wird im Moment an einer neuen API für das Backoffice gearbeitet.

Wohin führt der Weg?

Mit Umbraco 9 ändert sich auch der Release-Zyklus den Umbraco verwendet. Dieser wird an den offiziellen Release-Zyklus von .Net angepasst. Umbraco 10 wird auf .Net 6 basieren und genauso ein LTS-Release sein. Einen groben Überblick bietet folgende Grafik die Umbraco bereitgestellt hat.

Quelle: https://umbraco.com/blog/announcement-support-lts-and-eol-for-umbraco-cms-cloud-and-packages/

Interessiert?
Wir freuen uns über Dein Feedback!
Michael Wolf
Head of Technology
On this page