Tue, 2 May 2017
# Clean architecture links
In this post I will maintain a list of blog posts, projects and related material which cover the whole Clean Architecture subject (aka onion architecture, hexagonal architecture or "ports and adapters". This list is language/framework agnostic). Also this post covers ideas of modularity, and in general well designed software.
# Implemented projects
- Clean Architecture Example (Java): Example of what clean architecture would look like (in Java) + slides
- Wikimedia Deutschland fundraising software (PHP)
- Ema (php)
# Posts on the web
- The concept of Clean architecture by Uncle Bob
- Screaming architecture by Uncle Bob
- Hexagonal architecture by Alex Cockburn
- Is High Quality Software Worth the Cost? by Martin Fowler
- Cleaning up your codebase with a clean architecture by Barry O Sullivan
- Layers, ports & adapters - Part 1, Foreword by M.Noback - nice overview of developer's mind shifting towards "Simple architecture" + part2
- A github repo with lots of related links - worth reading and learning
- DDD, Hexagonal, Onion, Clean, CQRS, … How I put it all together - good introduction from seasoned developer whos been applying all these practices in real life
- Blog posts from M.Noback on Architecture subject
- Maintaining model integrity by Vytautas Žurauskas
# Slides
- Clean architecture with ddd layering in php by Leonardo Proietti
- Real life clean architecture by Mattia Battiston
- Living Documentation by M.Noback
# Books
- Clean Architecture: A Craftsman's Guide to Software Structure and Design (Robert C. Martin Series)
- The Clean Architecture in PHP by K.Wilson
# Videos
- Robert C Martin - Clean Architecture and Design - I've been coming back to this video again and again.
- What went wrong with the IT-industry? - James Coplien
- DevTernity 2017: Ian Cooper - TDD, Where Did It All Go Wrong
- The Future of Programming by R.Martin
- Kill "Microservices" before its too late by Chad Fowler
- Gordon Skinner - Hexagonal Architecture in DDD
- Is TDD dead?. Clean architecture inspires developer to have testable isolated chunks of code, so TDD ussually complement clean architecture. Worth watching!
- Alistair in the "Hexagone" - author of hexagonal architecture talks explains why it was invented with examples
- Matthias Noback - Hexagonal Architecture - Message-Oriented Software Design - M.Noback talks about why modern frameworks don't let you decouple from its details and how to write clean apps with heaxgonal architecture in mind.
- DPC2018: Advanced Laravel: Avoid unified data models - Shawn McCool
- Shawn McCool - Laravel.IO, A Use Case Architecture + slides
- prooph/micro and FPP - less is more by Sasha Prolic
- Explicit Architecture - Herberto Graca
- Kevlin Henney - Seven Ineffective Coding Habits of Many Programmers
- Andrew Cassell | Domain-driven Design Deconstructed
- Coding a Better World Together - with Uncle Bob - Day 1 + day 2
- OOP 2015 Keynote - Robert Martin: Agility and Architecture
# Podcasts
# Packages
- Prooph - well designed service bus, event sourcing package. Awesome lib to design a decoupled system.
- Symfony Messenger - The Messenger component helps application send and receive messages to/from other applications or via message queues.
- Deptrac - a tool to enforce architectural boundaries (handy!)
- rectorphp/rector - Instant Upgrades and Instant Refactoring of any PHP 5.3+ code