У меня к “паттернам” и “архитектуре” особое отношение. Может из-за того, что я постарел, очень не люблю эту суету вокруг этих двух понятий. Особенно когда лепят архитектуру, ради архитектуры, паттерн ради паттерна.
Мне кажется с опытом приходит понимание как надо сделать, чтобы код было легко: использовать (это включает в себя чтение, отладку, исправление), расширять и тестировать. Всё. Три кита хорошего кода.
В книгах пишут, мол, паттерны это еще и словарь общения программистов. Но такой херни вроде: сделай “мост”, напиши тут “прокси” я хотел бы избежать в моих командах, если такие диалоги случаются – что-то не так, кто-то слишком недавно эти книги прочитал. Зуд новичка.