Dé la vuelta a la pregunta: el patrón de mtch que debería estar haciendo es "qué patrón se ajusta a mi problema". Considere un patrón realmente simple, encontrando un elemento en una matriz. en C, que es algo así como
TYPE_t ary[SIZE] = // ... gets initialized somehow
size_t ix ; // Your index variable
for(ix=0; ix < SIZE; ix++){
if (ary[ix] == item) {
return ix ;
}
}
No te ves en el código y piensa "en el que puedo usar esa", nos fijamos en el problema y dicen "Yo sé cómo encontrar un elemento en una matriz ? "
Con patrones más extensos, realmente funciona de la misma manera. Necesita tener muchas copias de una estructura de datos que no cambie a menudo --- que le hace pensar "Flyweight". Si quieres algo que viva a ambos lados de un límite de red, piensas en Proxy.
Cuando estudie los patrones, especialmente el GoF, pregúntese "¿qué situaciones requieren este patrón? ¿He visto este patrón antes? ¿Para qué podría haber usado esto en trabajos anteriores? ¿Dónde puedo encontrar un ejemplo de esto en ¿mi propia vida?"
¿Cómo estudiar diferentes aplicaciones cuando no están documentadas? En el mundo real aplicamos y seguimos adelante. ¿Cómo encontrar esa fuente donde podemos estudiar sobre la aplicación exitosa antes de aplicar? ¿Dónde está la fuente? –
dale una cerveza a este hombre. – user1262904