Башня Байткода
69 subscribers
26 photos
2 files
27 links
Авторские заметки об архитектуре ПО на основе реальной практики.

github: https://github.com/PHPTCloud
Download Telegram
#arch #solid #sold4mens #note
Принцип стабильных абстракций - The Stable Abstraction Principle или SAP

Стабильные пакеты абстрактны. То есть абстрактность должна возрастать со стабильностью. Стабильность здесь — то, как часто нам приходится менять части пакета: классы, интерфейсы, или что-либо ещё. Абстрактные пакеты должны быть стабильны, чтобы безболезненно на них завязываться.

А вот гибкие пакеты, наоборот, конкретны — они должны быть нестабильны, чтобы мы их легко меняли. Все наши приложения, наши конечные пакеты — это на самом деле очень нестабильные составляющие, которые зависят от множества всего и ломаются чаще, чем пакеты, от которых они зависят.

❓ Можно ли измерить абстрактность?

Да. Абстрактность — это число абстрактных классов и интерфейсов в пакете, деленное на общее число классов и интерфейсов в этом самом пакете.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3🤯3