Published Dec 11, 2017

Clean Architecture - Components and Component Cohesion

Allen, Michael, and Joe dive into Clean Architecture, focusing on component cohesion, effective software release strategies, and the benefits of microservices, while emphasizing principles from Robert C. Martin to ensure high-quality and maintainable code.
Episode Highlights
Coding Blocks logo

Popular Clips

Episode Highlights

  • DRY Principles

    The team discusses the importance of adhering to DRY principles during refactoring. Alan emphasizes that while it's challenging to start with perfectly dry code, refactoring allows developers to identify and eliminate duplication over time. He notes, "You can't say dry all the things up front, but you can do it within certain components and within certain pieces of it" 1. Michael adds that maintaining DRY principles becomes a communication challenge as the codebase grows and involves multiple teams 2.

       

    Versioning

    Proper versioning is crucial for managing dependencies and ensuring compatibility during upgrades. Michael explains that components should have independent version numbers, allowing for more flexible updates 3. He highlights the importance of semantic versioning for maintaining order in complex systems. Joe humorously notes that deploying all microservices simultaneously defeats their purpose, emphasizing the need for proper version management 4.

Related Episodes