Переиспользование кода

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

В IT тоже есть правило трех, но оно касается переиспользования кода. Правило звучит так, что одинаковый код в двух местах не нуждается в рефакторинге, но если он встречается три или более раз - необходимо его вынести в отдельную процедуру.

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

Для создания общих библиотек тоже есть свои три правила трех:

  1. Создавать повторно используемые компоненты в три раза сложнее, чем одноразовые компоненты.
  2. Компонент следует опробовать в трех разных приложениях, прежде чем он станет достаточно универсальным, чтобы принять его как библиотеку повторного использования.
  3. Часто повторно используемые компоненты в три раза сложнее устроены, чем одноразовые компоненты.

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