Чиста архітектура в продакшені. Міграція з шаруватої архітектури на чисту. Масштабування чистої архітектури
чому ви навчитеся
- застосування на чистій архітектури в продакшен-проектах
- масштабування проекту від стартапу до великого проекту відповідно до чистої архітектури
- Керівництво по переробці від шаруватої до чистої архітектури
- базові знання c #
про що цей курс?
Курс показує слухачеві як застосовувати чисту архітектуру на практиці при розробці бекенда бізнес-додатків (так-так, той самий Кривавий enterprise). В якості демо-проекту використовується інтернет-магазин, не з чуток знайомий величезній кількості програмістів. Дядько Боб говорить про те, що кількість компонентів може змінюватися, проте він не говорить які компоненти можуть додаватися і для вирішення яких завдань. Курс показує які компоненти потрібно буде створювати хто тих, що описані дядьком Бобом, який вміст кожного компонента і якими будуть посилання між компонентами.
Також ви знайдете відповіді на питання:
- куди помістити сгоѕѕ-cutting сопсегпѕ (наскрізна функціональність) і хелпери, які є в будь-якому реальному проекті
- Чи Обов'язково використовувати rich-модель і як зміниться Архітектура при використанні анемічної моделі
- чим відрізняється і де знаходиться бізнес-логіка і логіка додатки
- Як організувати доступ до даних, чи обов'язково створювати абстракцію для ORM у вигляді репозиторіїв
- Як зміниться Архітектура, якщо в системі буде багато інтеграцій із зовнішніми системами та інфраструктури
- Які є підходи до реалізації інтерактиву, який підхід краще вибрати і чому
- яка роль ApplicationServices в чистій архітектурі
- контролери дядька Боба і контролери MVC-фреймворка-це одне і те ж чи ні
- Чи завжди працює правило залежностей
- Чи потрібно писати обгортки для всіх використовуваних в проекті бібліотек і фреймворків
Окремо розглядається питання масштабування архітектури. Курс показує як реалізувати відповідно до чистої архітектури мінімальний проект, а потім масштабувати його, втративши відповідність чистої архітектури. В якості мінімального проекту показаний мікросервіс, він масштабується до стартапу, стартап - до середнього проекту, а середній - до Великого, в якому буде кілька вхідних точок (Backend For Frontend).
Нарешті, розглядаються два популярних демо-проекту з гітхаба, який реалізовані відповідно до чистої архітектури. Проводиться огляд і аналіз архітектури цих проектів, їх достоїнств і недоліків (останніх, на жаль, буде чимало). І, звичайно, показується як відреставрувати ці проекти відповідно до чистої архітектури.
Що таке чиста архітектура?
Чиста архітектура була запропонована дядьком Бобом. Вона заснована на створених до нього цибулевої і гексагональної (її ще називають "порти і адаптери") архітектурах, проте містить досить багато нового. Чиста Архітектура говорить про те, що ядром системи повинні бути бізнес-сутності і бізнес-правила, незалежні від інфраструктури (наприклад, бази даних). Наступний шар-юскейси, це реалізація логіки програми. Далі шар контролерів, а вся інфраструктура знаходиться на зовнішньому шарі фреймворків. При цьому діє правило залежностей: зовнішні шари можуть використовувати внутрішні, але внутрішні не можуть використовувати зовнішні.
Курс відповідає на питання в чому схожі і чим відрізняються ці три архітектури, а також в чому їх принципова різниця зі шаруватою архітектурою. Курс розповідає як реалізувати проект, відповідний відразу і чистої, і цибулевої, і гексагональної архітектурам.
Для кого цей курс?
Курс призначений для backend-розробників бізнес-додатків, які хочуть відчувати гордість за виконану роботу, створюючи системи, в яких додавання нових фіч і виправлення багів викликає радість і щастя, а не біль і страждання.
Демо-проект курсу зроблений на C# і ASP.NET Core, але без використання специфічних фіч як Мови програмування, так і платформи. Так що ідеї та підходи, описані в курсі, будуть зрозумілі і корисні backend-розробникам на будь-якій мові програмування і будь-якій платформі (Java, Python, JavaScript, Ruby, Go, PHP ітд).
Для кого цей курс:
- Middle і senior розробники
- архітектори
- Тімліди і Техліди
https://privatelink.de/?https://www.udemy.com/course/clean-architecture-csharp-ru/#instructor-1