Development

Des Gophers neue Kleider: Go Modules revisited

Go 1.11 hat einen Paradigmenwechsel eingeleitet. Aus Go Packages werden versionierte Go Modules. Go Modules lösen den GOPATH ab und werden fester Bestandteil der Go Toolchain. Bis jetzt mussten Go Modules explizit aktiviert werden, doch mit Go 1.13 ändert sich das. Ihr lernt, was Go 1.13 in Sachen Go Modules bringt und was sich seit Go 1.11 getan hat.

Codegenerierung: Generieren oder nicht generieren – das ist hier die Frage!

In diesem Artikel geht es um Codegenerierung, warum wir Code generieren müssen und wie es funktioniert. Zunächst möchte ich allgemein beschreiben, warum die Generierung von Code notwendig ist, und auch ein bisschen Theorie einfließen lassen (aber nicht zu viel). Außerdem geht es um die verschiedenen Phasen der Softwareentwicklung, in denen der Quellcode programmatisch generiert werden kann, und ich vergleiche die verschiedenen Ansätze. Nicht zuletzt gehe ich auf die Architektur und die Idee hinter einem spezifischen Tool ein, das in einer bestimmten Phase Code generiert.

DDD-Artikelserie: Strategic Design – Umfassend und ganzheitlich

Domain-driven Design bietet uns mit dem sogenannten Strategischen Design eine Anleitung, wie eine Domain und damit der Problemraum fachlich erfasst und aufgeteilt werden kann. Diese Aufteilung lässt sich dann auf den Lösungsraum – die Software – übertragen. Die Fachbegriffe aus DDD, die dabei eine Rolle spielen, sind: Domain, Subdomain, Bounded Context und schließlich die Context Map für das Zusammenspiel der Bounded Contexts. In diesem Artikel werden wir diese Begriffe und unser Verständnis davon vorstellen.