O unico cuidado com essa parte teórica é que você pode querer aplicar toda hora e em todo lugar, é como diz o ditado: "para quem só tem martelo, todo problema é prego". Ao estudar um Design especifico, tente aprender alguns outros (2 ou 3) antes de sair usando. Quando eu estava iniciando, fiquei muito tempo preso tentando aplicar um unico design em todos os lugares.
Sim, esse é uma preocupação que o dev precisar ter: saber quando usar. Não existe nenhum padrão nem nada que resolve todos os tipos de problema. O ponto é: Estude, saiba quando usar e porque usar e não se feche para as outras alternativas.