Why take this course?

Software development career is very rewarding. Being able to code with simple, efficient and clean architecture will not only help you crack your interviews, but also take your career to a whole new level.


Software development jobs are mainly in developing business applications. This is the focus of this course. In this course, I will dive deep into the typical layered architecture for business applications, analyze the pros and cons of it and then present you the Clean Architecture, also known as the onion architecture, which is covered in Robert Martin's books and blogs.


This course is not just full of theories, I prepared a cargo shipping application as a whole case study with a lot of existing code analysis to help you understand the related software design principles, applying layered architecture and the clean architecture. I also code in front of your eyes when I apply the Clean Architecture to implement two new use cases.


By the end of the course, you will have a thorough understanding of the Separation of Concerns principle, layered architecture as well as the Clean Architecture and be able to use them in your next projects.


What you will learn:

  • Basic Software Architecture Concepts

  • Layered Architecture

  • Clean Architecture (Onion Architecture)

  • Separation of Concerns Principle

  • How Clean Architecture helps TDD and Unit Testing

  • Common Mistakes in Software Architecture


What you will need:

  • You have programmed for more than 6 months with any OOP languages

  • You have basic knowledge of OOP

  • You are eager to learn software architecture


Who this course is for:

  • Anyone with any OOP computer languages knowledge who wants to know more about software architecture in business apps.

  • Anyone who want to learn about the Clean Architecture (Onion Architecture) but haven't been able to grasp it yet.


Last but not least:

Enjoy this course and don't forget to check out my other courses which are created with the Clean Architecture in them to help you further understand this great architecture.

Course curriculum

    1. 0. Introduction

    2. 1. What is Software Architecture

    3. 2. What is a good software architecture

    4. 3. What is Complexity

    5. 4. The SoC Principle

    1. 5.Our Application

    2. 6. Without SoC Principle

    3. 7. Application SoC Principle

    4. 8. Dependency Injection

    5. 9. Problems with Layered Architecture_ Lack of Intent

    6. 10. Problems with Layered Architecture_ Leaks of Logic

    7. 11. Techology Driven Architecture

    8. 12. Intent Driven Architecture

    9. 13. Seeking the Middle Ground

    10. 14. Onion _ Clean Architecture

    11. 15. Plugins

    12. 16. Clean Architecture Applied

    13. 17. Problems solved by Clean Architecture

    14. 18. Benefits of Clean Architecture

    15. 19. Implement the View Ports Use Case

    16. 20. Implement Search by Port Use Case

    17. 21. A Common Architecture Mistake

    1. Source Code

    2. Next Steps

About this course

  • $39.00
  • 24 lessons
  • 2 hours of video content

One-time Payment

Buy this course and own it for a lifetime.

All-Access Subscription

Access to all courses with one low monthly price.

ALL-ACCESS Subscription

Access all my courses with a low yearly price. That's 30% Off comparing with the monthly plan.