Ресурси для вивчення Software Architecture

Всім привіт!
Цікавить напрямок Software Architecture.
Порадьте хороші ресурси по цьому напрямку. Щоб не поверхові, по ділу та легко читались.
Формат будь-який.
Дякую!

👍ПодобаєтьсяСподобалось5
До обраногоВ обраному17
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Можу говорити тільки за свій напрямок (Unity Applications). За весь час якогось єдиного задокументованого підходу з точки зору архітектури, я не знайшов. Навіть коли дивишся Unity Unite, то один рік вони показують одне і кажуть що ось це майбутнє, на наступний рік зовсім інше. Як приклад: архітектура на Scriptable Objects. Проєкти які ідуть в офіційному репо Unity теж всі дуже різні за архітектурою (правда прикладів великих комерційних проєктів там і не має), таке враження що навіть вони не знають як краще будувати додатки.

Що я зрозумів з досвіду в аутсорсі і роботи в різних командах, для того, щоб все було максимально гарненько це: знання і розуміння технічного стека на проєкті, DI, SOLID, паттерни (де це дійсно потрібно), а ще важливіше, щоб команда розуміла хід думок інших членів, і тоді більш-менш проєкт можна легко підтримувати і розширювати.

Якщо хтось може порекомендувати літературу, як будувати софт на Unity (не ігри) буду дуже вдячний за реальні кейси, а не воду, бо я як раз у процесі пошуку.

Раджу курс на OReilly від Марка Рідчарса і Ніла Форда. В ньому досить простими словами описується роль архітектора і необхідний набір майндсету/скілсету/тулсету.

Software Architecture Fundamentals. Neal Ford, Mark Richards
www.oreilly.com/...​ndamentals/9781491998991

По книжкам:

* Fundamentals of Software Architecture: An Engineering Approach
www.amazon.com/...​acteristics/dp/1492043451

* Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures
www.amazon.com/...​hitectures/dp/1492086894

* Designing Software Architectures: A Practical Approach
www.amazon.com/...​ngineering/dp/0134390784

* Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
www.amazon.com/...​intainable/dp/1449373321

* Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith
www.amazon.com/...​-Transform/dp/1492047848

* Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
www.amazon.com/...​Deploying/dp/0321200683/r

Сайти, блоги
microservices.io
www.cloudcomputingpatterns.org
blog.bytebytego.com

Кілька років тому активно ботанив архітектуру, більшість книжок з коменту вище прочитав, Річардса, Форда і кучу інших на ютубі дивився.
Попрацював пів року архітектом, не зайшло. Ти один, роботу нормально нема кому делегнути, всі тебе дьоргають (особливо клієнти незалежно від часової зони).
Вернувся в тех ліди, ЗП ± те саме, роботи в рази менше і спокійніше. Верхня планка в архітекта вища але й потрапити туди важче.

ІМХО, для українців як підрядників/контракторів стати архітектом на великих ентерпрайзах нереально бо це більш бізнес орієнтед позиція ніж технічна.
А на менших проектах до 100 людей архітект і не дуже потрібен, якось та й буде працювати)

Зробив групу для обговорень та запитань про архітектуру. Приєднуйтесь!
t.me/swarchua

По паттернам (после GoF):
* C++ in Action: Industrial Strength Programming (полистать — показана итеративная разработка)
* Пятитомник Pattern-Oriented Software Architecture
* Гексагоналка: оригинал alistair.cockburn.us/hexagonal-architecture и клоны herbertograca.com/...​ow-i-put-it-all-together
* Можно глянуть Enterprise Integration Patterns но, в принципе, POSA их покрывает
* Если есть дофигища времени — тут дофигища старых статей hillside.net/...​php/past-plop-conferences

По принципам построения систем:
* Microservice Patterns
* Domain-Driven Design
* Modern Operating Systems (Tanenbaum)

По настройке процессов:
* Organizational Patterns of Agile Software Development
* Peopleware
* Anti Patterns. Refactoring Software, Architecture and Projects in Crysis

По оптимизациям:
* ithare.com
* Designing Data-Intensive Applications (Кабанчик)
* www.agner.org/optimize

Можно добавить меня в телеграм — сброшу книжки t.me/denyspoltorak

P.S. Как уже писали, это все ни разу не поможет найти работу архитектором, или зарплату выше синьорской. То есть, по сути, такие специалисты не востребованы (как минимум, в Украине).

Для Software архітектора або як його ще називають Application архітектора:
Перш за все максимально досконале знання певного технічного стеку, мови програмування, базових фреймворків.
По-друге це як не дивно патерни проектування та архітектурних патернів.
По-третє вміння говорити, мати змогу розповісти про рішення іншим та зрозуміти індуса на тому кінці, що саме він має на увазі.

Для солюшн архітектора додається вищеперераховане + досвід та хоча б одна сертифікація AWS, GCP, Azure.
Бажано ще мати досвід у бізнес домені, Finance, Healthcare, Automotive, IoT etc.

Для Ентерпрайз архітекта додається технічний менеджмент.

Так а що саме? Технічні паттерни і тактики, клауди, перемовини з замовником, документація та діаграми, прийняття технічних рішень, architecture governance чи ще щось?

Software Architecture in Practice, Bass Kazman

Хуяк ***к и в продакшен, вот и вся архитектура

На собесе можно пороть лютую дич про архитектуру

Щось мені здається що саме це й продається)))
$10k Lead | Senior Java Software Engineer
djinni.co/q/3cdf26424c/?from=tg
$9,500 Team/Tech Lead/Java Developer
djinni.co/q/9bba885282/?from=tg
$9,000 Team Lead
djinni.co/q/6ee6aa9e1b/?from=tg
$8,500 Architect / CTO
djinni.co/q/ccd4b92d/?from=tg
$8,500 Senior Software Engineer
djinni.co/q/042c860d2f/?from=tg

Я проходив цей курс
www.udemy.com/...​14250506?start=0#overview

там ще є у цього автора.

Это все равно что просить «что почитать чтоб стать гроссмейстером?». Практика нужна.

а практика без теорії — марна трата часу.

Не марна. Якщо подивитися, як люди пишуть проекти, то можна й самому написати.
Патерни так і з’явились — хтось дивився, як написані різні проекти, та виокремлював в них схожі підходи. Відповідно, оті самі патерни перевинаходяться за потреби. З урахуванням їх кількості (за 2000 ніби), так і має бути.

Так теория — это доска 8×8 и пешки с фигурами. Ребенок 5-и лет выучит за неделю, да только вот гроссмейстера обыграть не сможет.
В программировании (на низком уровне) — это условия, переходы и прерывания.

Ось теорія hillside.net/...​php/past-plop-conferences
Хто її читав?
Кажуть, є чувак, що колекціонує патерни. Має більше 2000.
Ось розбір партій. Але щось мені здається, що зараз люди читають оглядові книжки, а не оригінали статей. Відповідно, «гросмейстерами» хочуть стати після самовчителя з шахів.
І отут вже цікавинка — бо книжка-самовчитель зазвичай гірша за хорошу практику.

Є різниця між

почитаю якусь базову книжку, потім доку, потім приклади

та

це дебюти та ендшпілі, тактичні та стратегічні мотиви, розбір партій класиків та топ гросмейстерів, розбір помилок у власних партіях

як мінімум — за об’ємом та вторинністю в першій цитаті

Ось це можна почитати hillside.net/...​php/past-plop-conferences
Воно буде хоч трохи схоже на

дебюти та ендшпілі, тактичні та стратегічні мотиви, розбір партій класиків та топ гросмейстерів

Але його не читають, а читають туторіали. А туторіал — це «навчися грати в шахи за 21 день».

якщо ж важко зробити вибір — можна звернутись до більш досвідчених колег.

Чому пишете «досвідчених», а не «начитаних»?

Нет, это уже не теория а разбор паттернов, который кстати сужает эвристику.
Для того чтоб стать гроссмейстером — надо просто начать играть с противником, сильнее тебя. Это работает везде, только в IT — это челленж, факап и постмортем.

Советую почитать историю Юдит Полгар.

Почитайте таки ее историю, ей с детства родители нанимали профессиональных шахматистов для игр, а не покупали книги про то «как стать гроссмейтсером»

То ця «інша дискусія» в сусідній гілці)))

Напоминаю — это было в качестве аналогии :)

Как раз ее история показывает — что дело было именно в практике, а не теории. Потому что dou.ua/...​campaign=06092022#2479232

А теория — это знание о шахматной доске и как ходят фигуры. ЧТД.

Підписатись на коментарі