Skip to content

bespoyasov/solidbook

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Солидбук

Read the description in English. The translation is on the way. Hold tight and stay tuned!

Книга о принципах SOLID и объектно-ориентированном дизайне программ.

О чём это и для кого

Программировать — сложно.

Хороший код адекватно отражает систему, которую описывает, он устойчив к изменениям в этой системе. Плохой код запутанный, хрупкий и непонятный — он замедляет разработку.

Код становится плохим, когда он перестаёт соответствовать реальности — бизнес-требованиям, правилам поведения частей системы, их отношениям друг с другом. Бизнес-правила — это территория, код — карта этой территории. Чем точнее карта, тем проще справляться с изменениями в требованиях и даже предвидеть их.

В этой книге мы хотим рассказать и показать на примерах, как принципы объектно-ориентированного программирования могут помочь спроектировать устойчивую систему.

О каких принципах пойдёт речь?

Мы рассмотрим 5 принципов SOLID, а именно:

Каждый из принципов — это лишь рекомендация, все они имеют область и границы применения. Но чтобы увидеть эти границы, необходимо понять, в чём польза и издержки каждого. Многие принципы вам покажутся чрезмерно абстрактными, неконкретными или вовсе надуманными. Отнеситесь к таким принципам, как к дзену Python — держите в голове, но проверяйте, насколько они полезны в конкретной ситуации.

Мы в этой книге предлагаем ещё одну из бесконечного числа интерпретаций этих принципов, попутно расписывая пользу и ограничения каждого. Зная пользу и ограничения, можно оценить, насколько конкретный принцип помогает решить задачу, стоящую перед вами.

Об авторах

Эту книжку написали:

...И контрибьюторы проекта ❤️

Лицензии

Текст и иллюстрации книги распространяются под лицензией CC BY-NC-SA 4.0. Вы можете дополнять, менять и использовать их в проектах на некоммерческой основе при сохранении лицензии и указании авторов.

Исходный код проекта распространяется под лицензией MIT.