2009-08-04 13 views
9

¿Cuáles son algunos de los proyectos de código abierto que podría exhibir como brillantes ejemplos de proyectos que utilizan correctamente y de manera eficaz los patrones de software empresarial y las mejores prácticas como Inversión de control, Modelo-Vista-Controlador, Pruebas unitarias, etc. ?¿Cuáles son algunos de los proyectos de código abierto mejor escritos que haya visto?

Para los fines de esta pregunta el proyecto debe:

  1. incluir el código fuente que ilustra el patrón en uso, y
  2. estar haciendo algo importante y útil, es decir, no utilizando el patrón frívolamente sólo porque es sabor de la semana. De ahí que las palabras "correcta y eficaz" en la pregunta

Debe ser el software que se podía mostrar a la gente que trabaja para usted y entusiasmo será capaz de decir: "Quiero que haces de la manera estos chicos de lo hicieron ".

+3

¿Quiere decir cuáles son compatibles con la palabra de moda? ¿No es lo que realmente hacen un poco más importante? –

+0

También vea http://stackoverflow.com/questions/27793/well-written-open-source-projects-for-learning –

Respuesta

0

¿Quiere decir Spring? O proyectos que lo usan?

ACTUALIZACIÓN: WebWork, Guice y Spring Security se ajustan al molde.

+0

Ese es un buen comienzo. Ambos. –

1

Una selección objetiva sería el proyecto Spring Batch.

¿Cómo lo recogí? A juzgar por la deuda técnica como se ve en el Nemo Sonar instance, Spring Batch tiene la relación deuda/línea más baja para proyectos de más de 10k líneas de código.

+0

+1 para contrarrestar el -1. Esta no es una mala respuesta. –

+0

No creo que pueda tener un ejemplo "objetivo" a menos que pueda cuantificar su respuesta en términos de las métricas exactas especificadas en la pregunta. Puede hacer, sin embargo, tener un ejemplo "subjetivo" con el que estoy de acuerdo. – thewillcole

+0

Las métricas exactas se explican en la página principal del complemento "Deuda técnica" http://docs.codehaus.org/display/SONAR/Technical+Debt+Plugin –

1

Cuando miré por primera vez el código fuente DotNetBlogEngine, quedé impresionado con lo bien organizado que estaba. Y no combinó ninguno de sus componentes con la interfaz, lo que la hace extremadamente flexible.

Tampoco es un proyecto terriblemente grande, no es como tratar de recompilar su propio kernel de linux o algo así. Entonces puedes sumergirte rápidamente y pasar un buen rato con él.

1

Usted puede tratar de este libro - Beautiful Code

El autor ha recogido algunos artículos de intercambio de experiencias de proyectos de código abierto. p.ej. Implementación de diccionario de Python, Editor de Delta de Subversion, etc.

Cuestiones relacionadas