Lesson 101 - Components and Root Namespaces

preview_player
Показать описание
Software development and software architecture intersect in many ways. One of those intersections is the definition and corresponding implementation of architectural components - the building blocks of an application. In this lesson Mark Richards describes the definition of an architectural component, a root namespace, and explains the concept of “orphaned classes” - classes residing in a root package. While this is a common practice, Mark shows how it can have devastating architectural implications, particularly when migrating monolithic applications to microservices.

Reference Links:

Рекомендации по теме
Комментарии
Автор

Hi Mark, this is a really interesting concept, and I see how it will make the live of both developer and architect easier. One question I have is how you structure modules such as Controllers, Views, etc. In a lot of frameworks by convention they are stored in the same folder/namespace. Do they become components of their own?

andriisnihyr
Автор

Hi Mark,

I am struggling to understand the purpose of this.

From what I understand all this accomplish is a clean separation of modules into components, allowing for easy refactoring into separate services. As a developer, a similar scenario would be to use logical spacing to separate pieces of logic, so it can be easily copied and pasted into functions if needed.

Is organization and ease of refactoring the benefits that this golden rule you mention offers? Or am I missing something else?

Zuppified
Автор

I can imagine the arguments for and against this approach but great points made here. When is the "Software Architecture Deep Dive" book being released? 😊 I am making an assumption that a second book is in the works.

KarimVite
Автор

Thanks a lot for this video.. Very informative

VasileSurdu
Автор

Is this a full course on software architecture

ranjithsivanandham