Pregunta

He estado trabajando en una aplicación de WPF compuesto y acabo de leer algunas buenas pautas en la partición de código en ensamblados. El autor del artículo apoya reducir al mínimo el número de conjuntos que sea posible.

¿Cómo equilibrar hacer su aplicación de WPF Compuesto razonablemente modular y reducir al mínimo el número de conjuntos?

Para mi proyecto actual Empecé por la creación de un módulo para cada grupo lógico de funcionalidad, que conducen a un buen número de montajes (14) más bien pequeñas. Si tuviera que refactorizar esto y tratar de minimizar las asambleas, que podría conseguir abajo a 6, mientras que todavía está en armonía con la arquitectura Composite WPF, pero me pregunto si estoy perdiendo algo de flexibilidad ... tal vez debería recordar YAGNI .

¿Fue útil?

Solución

Además YAGNI, recuerdan también los href="http://en.wikipedia.org/wiki/Separation_of_concerns" de las preocupaciones y la patrones de carga perezosos y utilizarlos para su beneficio. No sirve de nada tener un menor número de asambleas que agrupan una gran cantidad potencialmente más características que no necesite que pertenece a diferentes aspectos de su aplicación. También hay que tener en cuenta que también es mucho más fácil de mantener el código que mantiene un acoplamiento de baja, ya que puede correr el riesgo de inducir errores liando en la misma funcionalidad de montaje que no pertenece juntos.

Es posible que desee hacer algunas pruebas de usabilidad en uso-escenarios típicos de su aplicación, y ver qué módulos se necesitan frecuentemente juntos, dependen unos de otros, o heredar el uno del otro y el paquete éstas en las mismas asambleas. Los módulos que tienen funcionalidad disjuntos -. Que hacen una opción conduce a la carga de uno o otro, pero nunca ambos, deben especialmente ser mantenido en conjuntos separados

Otros consejos

Vaya por delante y dividir el código en la mayor cantidad de montajes como sea necesario para mantenerlo fácil de entender y de mantener. Más tarde, si descubre problemas de rendimiento en su aplicación, y estos son debido a un excesivo número de asambleas, se puede empezar a pensar en unirse a algunos de ellos. Sólo asegúrese de tener un diseño y estructura de espacio de nombres de modelo de objetos de claro para que no se pierde la pista de su código independientemente del número de asambleas que está utilizando.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top