Muito boa postagem.
Somos engenheiros. Ou não? Somos pagos para dar soluções, não para entregar soluções já existentes (às vezes isso é ok). Precisamos entregar o melhor. E para isso temos que entender muito bem qual é o problema. E dominar todas as técnicas, até as raras de serem usadas, para oferecer a melhor solução.
Mas antes precisamos interpretar o que temos à nossa frente. Para tudo. Só assim podemos evoluir e partir de algo correto para pensar na solução. Muitas vezes a nossa falha não está nem em ainda não ter experiência com programação, falta a base da base, que se aprende, ou deveria aprender na escola.
Não podemos só montar peças de Lego. Sim, oque fazemos é montar peças de Lego, tudo o que fazemos já está aí, não tem muito como inventar coisas novas, até para os cientistas mais renomados na área, pelo menos no básico, mas usamos com criatividade, questionando, entendendo, raciocinando.
Por isso não adianta perguntar onde usar design patterns, precisa aprender o que é, quais são eles, e entender o todo para o momento que precisar de um deles, poder usar adequadamente, sem forçar para usar por usar.
Só quero destacar para dividir os problemas, sem perder o todo, em muitos casos a solução não sai ou não é boa porque na divisão cria-se um novo problema. Então é preciso ter atenção em tudo.
Nada disso é novidade. Mas é sempre importante entregar formas diferentes para audiências novas o quanto é importante. Queria que mais pessoas tomassem consciência disso.
Faz sentido para você?
Espero ter ajudado.
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).