SOLID
Пять принципов ООП от Роберта Мартина: единственная ответственность, открытость/закрытость, подстановка Лисков, разделение интерфейсов, инверсия зависимостей.
Ориентиры для написания сопровождаемого ООП-кода. Их часто возводят в догму, хотя это полезные рекомендации, а не законы. У функционального программирования есть собственные (вполне разумные) принципы.