Etiquetas

, ,

hacha

Cuando trabajamos con el visual Studio podemos trabajar con proyectos de distintas envergaduras que pueden constar de uno múltiples assemblies a ser generados y  generalmente cada uno de estos assemblies esta ligado a un proyecto (*.csproj o *. vbproj) y este proyecto a una solución (*.sln) esto en el caso mas sencillo pero en otros casos nuestro desarrollo involucra la generación de múltiples soluciones y por lo tanto múltiples proyectos (*.csproj o *. vbproj), es aquí cuando surge la pregunta de que tantos proyectos debería agrupar en una solución, ya que el hecho de agregar mas y mas proyectos a una solución va trayendo consigo una serie de problemas como lo es un mayor tiempo de espera al descargarnos la toda la solución del team fundation o la misma compilación de toda la solución, en función de todo esto debemos decir cuando dividir nuestro código en mas soluciones o cuando dejarlo en una única solución. Aquí van algunas consideraciones al respecto.


Usar una única solución: esto estará bien para el desarrollo de sistemas pequeños, preferiblemente menos de 12, en este caso no tendremos problemas para bajar nuestro código fuente del control de versiones ni para compilar la aplicación y además mantendremos las ventajas de poder realizar referencias entre proyectos en lugar de referencias a otros assemblies

single solution

Usar una solución particionada: esto será útil en el caso de que el desarrollo de nuestro sistema crezca considerablemente en el numero de proyectos, de esta manera dividiremos nuestro código en varias soluciones donde se agruparan preferiblemente los proyectos que dependen entre si, además agregaremos a nuestro sistema un archivo de solución maestro (Master Solution ) que no consistirá en mas que en un archivo de solución a la que agregaremos todos los proyectos de todas las soluciones, esto nos permitirá seguir creando referencias entre proyectos y que se compilen automáticamente las sub soluciones de las que dependen la solución o proyecto que estemos compilando manteniendo actualizado todo nuestro código, de esta manera podemos descargar del control de código fuente solo la solución con la que queremos trabajar y al mismo tiempo usar la solución maestra para compilar todo nuestro sistema si así lo quisiéramos.

parrriones solution

Usar múltiples soluciones: cuando la cantidad de proyectos y soluciones crezca a nivel que se complique la administración de una solución maestra por el hecho de tener que agregar los proyectos a mas de una solución o por problemas de mapeo o rendimiento,  esta será nuestra mejor opción, la desventaja que tendríamos en este caso es que todas las referencias que tuviéramos que hacer entre proyectos seria referencias a assemblies.

multiple solution