Architektur

1 Min. Lesezeit
Ganz am Anfang sah ich Programmierung als den Akt, Dinge zum Laufen zu bringen. Heute ist sie ein integraler Bestandteil von mir als Ingenieur.
Wenn mich jemand fragt, was für ein „Programmierer“ ich bin, antworte ich meist, dass ich ein „Architektur“-Typ bin. Es ist etwas, worüber ich immer nachdenke und versuche, darin besser zu werden. Mein Interesse rührt von der Intoleranz gegenüber Zweideutigkeit her.
Die größte Veränderung für mich im Laufe der Jahre ist, dass ich eine Codebasis nicht mehr nur als eine Ansammlung von Anweisungen betrachte. Mein Ziel ist es, mich von impliziten Annahmen oder „Bauchgefühlen“ hin zu stabilen und logischen Regeln zu bewegen (was ich als mathematische Garantien für das System betrachte).
Die Hauptmotivation für das Schreiben von Notizen über Softwarearchitektur ist fast immer eher persönlich – ich werde in etwas besser, wenn ich versuche, dieses „Etwas“ zu erklären.
Meine Notizen zum Thema „Architektur“ findest du unten in den „Verknüpften Erwähnungen“.

Verknüpfte Erwähnungen6

Fehlschläge, die wir nicht korrekt modellieren

Warum das Zurückgeben von null, das Werfen von Exceptions oder das Wrappen in Result keine bloße Stilfrage ist – es ist ein Vertrag, den du definierst.

Semantische Typisierung, die wir ignorieren

Der Sprung von der 'Das ist ein String'-Mentalität zu 'Das ist ein Konzept'. Erfahren Sie, wie Sie mit semantischer Typisierung in Kotlin bessere, selbstdokumentierende Domänenmodelle erstellen.

Paketbenennung, um die sich niemand kümmert (aber sollte)

Warum übersehen Entwickler oft die Paketbenennung? Entdecken Sie ihre entscheidende Rolle bei der Wartbarkeit des Codes und wie das Denken über bloße Ordner hinaus zu klareren Verantwortlichkeiten, einfacherer Navigation und einer robusteren Softwarearchitektur führen kann.

Das richtige Gleichgewicht zwischen DDD, Clean und Hexagonal Architekturen finden

Die Suche nach der richtigen Architektur kann ein Rätsel sein. Tauchen Sie ein in praktische Erkenntnisse zum Ausgleich von DDD-, Clean- und Hexagonal-Prinzipien, um robuste, wartbare Anwendungen ohne Over-Engineering zu erstellen. Entdecken Sie, wie Sie diese Theorien für sich nutzen können.

ViewModel ist kein Platz für deine Logik

Machen Ihre ViewModels zu viel? Wir untersuchen die richtigen Grenzen der ViewModel-Verantwortung und warum die Konzentration auf den UI-Zustand der Schlüssel zu einer gesunden und skalierbaren Architektur ist.

Erweiterungsorientiertes Design in Kotlin

Entdecken Sie die Kraft des erweiterungsorientierten Designs in Kotlin. Sehen Sie, wie dieser elegante Ansatz die Code-Organisation optimiert, bestehende Klassen verbessert und Lösungen für allgemeine Herausforderungen in der Entwicklung bietet.