Nathan Johnstone

Nathan Johnstone

.NET Pathfinder/Architect at Coolblue, Netherlands

Currently working as a .NET Pathfinder/Architect at Coolblue, Nathan helps teams to achieve mastery in TDD, refactoring techniques and system architecture. Software development is a life long passion that started with writing games in basic on his first computer (Commodore 16) at the age of 8 and continues to this day.

Speaker's activity

Application Architecture – Inside/Outside Thinking With Hexagons



The traditional layered architecture has been around for a long time, and for equally as long has been often implemented naively with little to no regard for the direction of dependencies, who is coupled to whom and who is causing change to whom.

I will discuss the Hexagonal Architecture approach first written up by Alistair Cockburn and how it provides a clear way to think about your application and it’s most important pieces, namely the boundaries between different responsibilities and how to keep them from become entangled.

I’ll also show some concrete examples of how I’ve implemented various adapters in .NET for incoming (commands / use cases) and outgoing (persistence / notification etc…) ports.