Видеокурс по шаблонам проектирования: https://goo.gl/4oZ3jk



Общие принципы рассказаны на примерах с использованием Java, но могут быть реализованы на любом языке.