5 книг по проектированию архитектуры ПО
Собрали несколько крутых англоязычных книг, которые помогут в изучении основ проектирования архитектуры ваших сервисов и приложений.
Architectural Styles and the Design of Network-based Software Architectures
Хорошая архитектура не создается в вакууме. Все проектные решения на архитектурном уровне должны быть выполнены в контексте функциональных, поведенческих и социальных требований разрабатываемой системы. Автор этой диссертации, Рой Томас Филдинг (Roy Thomas Fielding) пытается донести, что это является принципом, который в равной степени относится как к проектированию архитектуры программного обеспечения, так и к традиционной области проектирования архитектуры зданий.
Naked Objects
Большинство людей, которые считают, что они делают объектно-ориентированный дизайн, на самом деле ничего не делают, потому что игнорируют самый важный принцип ООП. Авторы описывают этот принцип как «поведенческую полноту»: объект должен полностью моделировать поведение сущности, которую он представляет. Вместо этого большинство людей продолжают разрабатывать бизнес-системы, которые отделяют процедуры от данных, которые только внешне напоминают ООП подход.
Поскольку поведенческая полнота является ключом к реализации основного преимущества объектной ориентированности: способности справляться с непредвиденными изменениями требований.
Data-Oriented Design
Книга об ориентированном на данные подходе в разработке. Ее автор, Ричард Фабиан (Richard Fabian) многие годы занимался разработкой на C++, чтобы прийти к мыслям об этом подходе и изложить их на страницах этого учебника.
How to Design Programs
Как проектировать программы – это книга Маттиаса Феллесина (Matthias Felleisen), Роберта Брюса Финклера (Robert Bruce), Мэтью Флатта (Matthew Flatt) и Шрирама Кришнамурти (Shriram Krishnamurthi) о систематическом проектировании компьютерных программ, опубликованных в 2001 году издательством MIT Press. Книга представляет собой готовую концепцию проектирования, шестиэтапный процесс создания программ, основанный на описании проблемы. Этот учебник принят в ряде колледжей и университетов для обучения принципам разработки программ.
Unmaintainable Code
Автор «Неподдерживаемого кода» обещает пожизненную работу каждому, кто будет свято следовать советам этой книги. Потому что никто, кроме вас потом не сможет в этом коде разобраться. Более того, если следовать инструкциям в точности, то разобраться в коде не сможет даже его автор.
Хороший материал про то как писать код на примерах того, как это делать не стоит.