Pull to refresh
4K+
12
Александр@infinity92

User

16
Rating
Send message

Как учебные примеры Factory Method ломают SOLID

Level of difficultyEasy
Reading time10 min
Reach and readers7.7K

Заметил такую особенность во многих учебных статьях и туториалах: в популярных объяснениях паттернов часто не хватает оговорки, что ради упрощения объяснения в примере нарушены принципы SOLID.

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

Особенно часто это происходит с Factory Method. В этой статье мы разберём несколько популярных примеров этого паттерна, посмотрим, где именно возникает проблема, и обсудим альтернативы в реальных проектах.

Читать далее

Почему Mercurial не смог угнаться за Git (и чем они отличаются под капотом)

Level of difficultyMedium
Reading time9 min
Reach and readers11K

Привет, я Александр, разработчик из команды Битрикс24. В этой статье разбираюсь в особенностях распределенной системы управления версиями Mercurial. Хотя она появилась одновременно с Git и похожа на него внешне, успеха достичь не смогла. Почему так получилось, как она работает, для каких проектов подходит — обо всем ниже. 

Читать далее

Information

Rating
582-nd
Location
Новосибирск, Новосибирская обл., Россия
Registered
Activity

Specialization

Фулстек разработчик
Ведущий
SQL
Git
Docker
PHP