21. Mai 2019 Börse Dresden
Dev Day 2019

Software-Design für die Seele

Ein Großteil der praktizierten Software-Entwicklung ist Wartung, also das Herumbasteln an Software, die eigentlich schon fertig sein sollte, aber trotzdem irgendwie noch nicht ganz so funktioniert wie sie soll. "Bastelorientiertes Programmieren" ist so ziemlich das Gegenteil von robuster und sicherer Entwicklung, aber die meisten heutigen Informatik-Systeme werden genauso entwickelt. (Inbesondere die allgegenwärtigen IoT-Geräte, denen wir immer mehr Aspekte unseres Lebens anvertrauen.) Wie also bekommen wir die Kontrolle über die Software der Zukunft zurück, die zunehmend außer Kontrolle gerät? Nicht mit objektorientierter Programmierung: Veränderbarer Zustand, die Abwesenheit von uniformen Abstraktionsmechanismen und vererbungsbedingte Komplexität machen es für Menschen schwer, korrekte und robuste Software zu entwickeln. Während agile Methoden Entwicklerinnen und Entwickler von den seelensaugenden Prozessen der Vergangenheit befreit haben, ist die vorherrschende Technologie - Objektorientierung - immer noch Teil des Problems, nicht der Lösung. Es ist an der Zeit, sich davon zu verabschieden: Wir sollten die systematische Konstruktion korrekter Software propagieren. Im Zentrum dieser Revolution steht die konsequente Anwendung funktionaler Programmierung - also unveränderlicher Datenstrukturen, systematischer Abstraktion und Datenmodellierung. Weg mit den toten techologieorientierten Objekten der Vergangenheit, her mit geschmeidigen Modellen, die unsere Domänen bereichern und unsere Seele!

Video
Folien