Шаблони, де спочатку документували архітектуру. В архітектурі застосовують речі, починаючи від розміщення дверей у кімнаті і закінчуючи компонуванням села.
Банда чотирьох застосувала цю ідею до об'єктно-орієнтованого програмування. Можливо, існує більше одного шаблону, який може бути використаний для вирішення проблеми, але кожен шаблон матиме конкретну реалізацію. Шаблони існують і в інших підходах до програмування, але я не знаю жодних застосовних книг. Як згадували інші, Шаблони охоплюють конкретні реалізації. Використання шаблону, коли він не застосовується, часто вважається антидіаграмою.
Принципи не охоплюють впровадження, хоча можуть бути стандартні підходи до впровадження. Принципи скоріше стосуються висвітлення загальних питань, а не конкретних проблем. Щодо інверсії управління, мені відомо щонайменше три підходи до реалізації. Для DRY (не повторюйте себе) я не знаю конкретного підходу до виконання, хоча я використовую декілька.
Розглянемо
- Вам запропоновано використовувати шаблон, як абстрактний заводський візерунок, як єдиний підхід для розробки програми. Це було б доречно? Ні, тоді це швидше закономірність.
- Вам запропоновано застосувати DRY до всіх компонентів? Це було б доречно? Так, тоді, швидше за все, це буде Принцип.