¿Dónde puedo obtener más información sobre los patrones de diseño de software como MVVM?

Esto es bastante fácil: el libro por excelencia sobre el tema es: Patrones de diseño: elementos de software orientado a objetos reutilizables, de la banda de los cuatro. Este es el estándar de facto para comprender los patrones de diseño.

Sin embargo, puede buscar patrones de diseño fácilmente en Internet. MVVM es solo una permutación de MVC. Nada particularmente sorprendente sobre nada de esto.

Puede revisar y comprar este libro aquí: Amazon.com: Patrones de diseño: Elementos de software orientado a objetos reutilizables (Adobe Reader) eBook: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides: Kindle Store

Aquí hay un gran sitio que desglosa muchos de ellos:

Banda de cuatro patrones de diseño

Algunos otros grandes libros sobre el tema son:

Head First Patrones de diseño: Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson: 0000596007124: Amazon.com: Libros

Particularmente si estás leyendo PHP, este libro de Oreilly es bastante impresionante:

Aprendizaje de patrones de diseño PHP: William Sanders: 9781449344917: Amazon.com: Libros

el libro que la mayoría de los desarrolladores de php también conozco, y lo he leído 3 veces y me encanta:

Objetos, patrones y práctica de PHP: Matt Zandstra: 9781430260318: Amazon.com: Libros

También puede consultar este repositorio de github que abarca implementaciones de la mayoría de los patrones de diseño:

domnikl / DesignPatternsPHP

Puede revisar la página de Wikipedia sobre el tema que es precisa:

Patrones de diseño

También le recomendaría que reconozca de qué estamos hablando. Los patrones de diseño son solo eso: patrones para resolver problemas. Los patrones de diseño le brindan enfoques para comprender mejor las prácticas orientadas a objetos de manera concisa y poderosa. También reconocerá que su trabajo anterior o actual podría beneficiarse de estos patrones.

Sin embargo, una vez que trasciendes esto y, como dicen la mayoría de los libros, este es un método de pensar, observar y poner en práctica patrones de trabajo. Realmente no es una guía por excelencia sobre cómo construir software, sino más bien patrones que las personas han ideado que funcionan bien.

No pase sus días ‘diseñando diseños’ o tratando de hacer que un patrón se ajuste a su molde, sino que comprenda el trabajo y la investigación de los demás y cómo se puede aplicar a sus desafíos individuales.

Finalmente, si está buscando patrones específicamente similares a MVVM, simplemente investigue varios patrones de estilo MVC diferentes. Al final, todos estos son enfoques organizados para la separación de preocupaciones. Dependiendo de su proyecto, debería poder identificar estas necesidades, crear patrones y ponerlos en práctica para lograr eficiencia y facilidad de mantenimiento.