Lista seleccionada y mantenida por la comunidad de libros, cursos, chuletas y podcasts gratuitos de programación en muchos idiomas.
iluwatar/java-design-patterns
Colección de código Java que implementa patrones de diseño de software clásicos y modernos, con ejemplos comentados para cada patrón.
- Estrellas
- 94,802
- Forks
- 27,346
- Issues abiertos
- 141
- Último commit
- hace 13 días
¿Qué es?
Este repositorio implementa un amplio conjunto de patrones de diseño de software en Java. Cada patrón está en su propio módulo, que contiene código de ejemplo. Los ejemplos incluyen comentarios que explican cómo se aplica el patrón, por lo que se pueden leer como tutoriales paso a paso.
Los patrones se pueden explorar por nombre, por etiqueta —como Performance o Gang of Four— y por categoría, como Creational o Behavioral. El proyecto también ofrece un sitio web en java-design-patterns.com que presenta el mismo material con descripciones y enlaces al código fuente.
La premisa declarada del proyecto es que los diseños deben ser lo más simples posible y que los patrones solo deben incorporarse cuando la necesidad de extensibilidad práctica lo requiera. También se aceptan contribuciones y se ofrece una versión del material en un e-book independiente.
Funciones clave
- 01Incluye los patrones clásicos de Gang of Four y otros patrones de uso extendido en Java.
- 02Cada patrón tiene su propio módulo con código de ejemplo ejecutable y comentado.
- 03Permite buscar patrones por nombre, etiqueta o categoría.
- 04Incluye un sitio web complementario con descripciones y enlaces al código fuente.
Casos de uso
- Aprender patrones de diseño leyendo ejemplos funcionales en Java.
- Consultar una implementación de referencia de un patrón específico antes de aplicarlo en tu propio código.
- Prepararse para entrevistas de diseño de software o revisiones de código que aborden el uso de patrones.
Antes de usarlo
- La licencia en los metadatos es NOASSERTION, aunque el README indica MIT. Comprueba el archivo de licencia antes de reutilizarlo.
Temas
Preguntas frecuentes
- ¿Qué es java-design-patterns?
- Colección de código Java que implementa patrones de diseño de software clásicos y modernos, con ejemplos comentados para cada patrón. Este repositorio implementa un amplio conjunto de patrones de diseño de software en Java. Cada patrón está en su propio módulo, que contiene código de ejemplo. Los ejemplos incluyen comentarios que explican cómo se aplica el patrón, por lo que se pueden leer como tutoriales paso a paso.
- ¿java-design-patterns es gratuito? ¿Qué licencia tiene?
- java-design-patterns es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿java-design-patterns sigue mantenido?
- Mantenimiento activo. El último commit de java-design-patterns fue el 8 oct 2026.
- ¿Para qué puedo usar java-design-patterns?
- Aprender patrones de diseño leyendo ejemplos funcionales en Java. Consultar una implementación de referencia de un patrón específico antes de aplicarlo en tu propio código. Prepararse para entrevistas de diseño de software o revisiones de código que aborden el uso de patrones.
- ¿Dónde consigo java-design-patterns?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/iluwatar/java-design-patterns
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Una lista seleccionada de tutoriales, organizada por lenguaje, que guía a los desarrolladores para crear aplicaciones completas desde cero.
Colección de artículos breves y fragmentos de código JavaScript independientes para aprender patrones de programación habituales en 30 segundos o menos.
Colección de ejemplos y guías en notebooks de Jupyter para realizar tareas habituales con la API de OpenAI.
Guía gratuita y amena en chino para aprender Java, con contenidos sobre Java básico, concurrencia, JVM, desarrollo empresarial y preparación para entrevistas.
Un curso gratuito y de código abierto para principiantes que enseña el Model Context Protocol (MCP) con ejemplos prácticos en C#, Java, JavaScript, Python, Rust y TypeScript.