Ende Juni war es soweit: Softwareentwickler von nah und fern kamen für vier spannende Tage in Nürnberg zur diesjährigen Developer Week (DWX) zusammen. Unsere Entwickler waren ebenfalls vor Ort und berichten aus erster Hand von einigen ihrer Favoriten des umfangreichen Programms.

Xamarin.Forms ist viel schöner mit Prism.Forms

Xamarin gilt als eine der größten und ausgereiftesten Plattformen, wenn es um das Thema Cross-Plattform-App-Entwicklung geht. Nach der Übernahme von Microsoft im Jahr 2016 entwickelt der Softwarehersteller diese Plattform permanent weiter. Siavash Ghassemi stellte in diesem Vortrag das Framework Prism.Forms vor, mit dem es möglich ist, verschiedene Bereiche bzw. Zuständigkeiten in der App-Entwicklung besser voneinander zu trennen. So ist es beispielsweise möglich, im späteren Verlauf eines Softwareprojekts die Benutzeroberfläche einem kompletten Re-Branding zu unterziehen, ohne dabei den funktionalen Quellcode der App anpassen zu müssen. Aber auch in die andere Richtung funktioniert dies dann ohne große Anpassung. So kann eine Benutzeroberfläche beispielsweise sehr schnell und einfach wiederverwendet werden.

Das Web wird nativ(er): Progressive Web Apps mit Angular

Die Zukunft der Mobilen Apps geht – zumindest Stand heute – Richtung Progressive Web Apps (PWA). Hier wurde ein guter Einblick zu der Geschichte, dem aktuellen Stand und den Planungen gezeigt. Das Beste daran: in Zukunft wird man wohl nur noch eine Website haben, die responsive, HTTPS-gesichert und auf jedem Endgerät gleich aussieht. Mit einigen Klicks kann die PWA installiert werden, wenn man die Website entsprechend vorbereitet. Push-Notifications, Offline-Funktionalität und „nativ-wirkend“ sind somit integriert und man muss nicht verschiedene Teams für einzelne Apps und die Website einsetzen.

Seperation of Concerns: Gehört das wirklich dahin?

Ein sehr interessanter Slot, bei dem erklärt wurde wie man Code – der sogar vorher aus 20-30 Zeilen bestand – feiner aufteilen kann. Im Grunde wird fast alles was man in irgendeiner Art und Weise wiederverwenden könnte in einzelne Klassen/Methoden verschoben. Im Grunde ist es ein einfaches Prinzip und kann für die zukünftige Arbeit sehr hilfreich sein. Zumindest theoretisch – die Praxis sieht in der Regel leider anders aus. Im Projektalltag hat man oft nicht die Zeit alles fein aufzuteilen. Auch muss man sich vorher fragen, ob es den Aufwand wirklich wert ist. Natürlich ist die Idee bzw. das Prinzip weiterhin gut und sinnvoll, sollte aber im Verhältnis zum Nutzen/Aufwand stehen.

Aber nicht nur zum eigentlichen Vortrags-Thema haben die Teilnehmer etwas gelernt. Nein, denn auch die Art der Präsentation war spannend – es wurde live gecoded. Die Herausforderung ist hierbei die knappe Zeit und die Tatsache, dass man doch auch mal etwas vergisst oder etwas schief geht, wenn man „mal schnell etwas entwickelt“. Die Lösung von Referent Uli Armbruster, co-IT.eu GmbH, war die Nutzung von Git-Repositories. Dabei holte er sich immer von der ersten (ältesten) Version die Nächste. Das erfordert am Anfang natürlich etwas Fleißarbeit, da man nach jeder doch so kleinen Änderung ein Commit durchführen muss, doch am Ende zahlt es sich aus.

Technische Schulden mit Domain-Driven Design vertreiben

In Softwareprojekten ist es wichtig, dass Entscheidungen getroffen werden. Technische Entscheidungen beeinflussen in besonderem Maße die Langlebigkeit von Software. So ist es ganz normal, dass in großen Projekten, die permanent weiterentwickelt werden, Architekturregeln umgangen werden. Dies hat für den Nutzer einen großen Vorteil: er bekommt seine Anpassung schneller und ist zufrieden. Die Kehrseite der Medaille ist allerdings, dass sich dadurch die Wartung und Weiterentwicklung als immer schwieriger und teurer erweist. Dr. Carola Lilienthal (Geschäftsführerin der Firma WPS) zeigte in diesem Vortrag auf, wie technische Schulden durch Domain-Driven Design minimiert werden können, fordert allerdings auch dazu auf, aktiv auf solche Schulden anzusprechen und Konsequenzen aufzuzeigen. Nur durch Begleichen der Schulden kann auf lange Sicht Softwarequalität gewährleistet werden.

Möchten Sie sich mit uns zu diesen oder anderen Entwicklungs-Themen austauschen? Dann stehen wir natürlich gerne zur Verfügung.

Kommentare

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

    Christina Reif