Patrones donde originalmente se documentaron para Arquitectura. En arquitectura, aplique a cosas que van desde la colocación de la puerta en una habitación hasta el diseño de un pueblo.
The Gang of Four aplicó la idea a la programación orientada a objetos. Puede haber más de un patrón que puede usarse para resolver un problema, pero cada patrón tendrá una implementación específica. Existen patrones en otros enfoques de programación, pero no conozco ningún libro aplicable. Como otros han mencionado, los patrones cubren implementaciones específicas. Usar un patrón cuando no se aplica a menudo se considera un antipatrón.
Los principios no cubren la implementación, aunque puede haber enfoques de implementación estándar. Los principios tratan más sobre temas generales que sobre problemas específicos. Para la Inversión de control, conozco al menos tres enfoques de implementación. Para DRY (No se repita) No conozco un enfoque de implementación específico, aunque uso varios.
Considerar
- Se le ha pedido que use un patrón como el patrón abstracto de fábrica como el único enfoque para desarrollar un programa. ¿Sería esto apropiado? No, entonces es más probable que sea un patrón.
- ¿Se le ha solicitado que aplique DRY a todos los componentes? ¿Sería esto apropiado? Sí, entonces es más probable que sea un Principio.