2008-12-02 25 views
11

Me han dado un regalo de Navidad:
permiso para salir del ciclo de desarrollo para reorganizar y documento nuestra aplicación.
Tengo completa libertad para reestructurar, refactorizar y configurar cualquier cantidad de infraestructura que considere conveniente."Perfecto" entorno de desarrollo .NET?

Si tuviera carte blanche, ¿cuál es su entorno de desarrollo .NET "perfecto"?

Sobre la aplicación:
Aplicación cliente-servidor VB.NET. (Interfaz de Windows Forms, ASPX Webservices back end)
Actualmente usando Visual Studio y SQL Server 2003 y ... Visual SourceSafe.

me gustaría tener alguna combinación de:
* Mejor control de versiones. (inclinándose hacia Subversion)
* Wiki u otro sistema para el seguimiento y la documentación de errores. (Inclinándose hacia Trac con Subversion)
* proceso de construcción simplificada y construcciones diarias (Visual Build? CruiseControl.NET?)
* El control de versiones de la base de datos de SQL Server
* Actualiza a Visual Studio 2005 (o 2008)?

... por un pequeño equipo de desarrolladores de más o menos 5

+1

SQL Server 2003: ¿estás seguro? La última vez que revisé no hay tal animal. –

+0

Tal vez se refiere a VS2003 y SQL Server 2000 –

+0

jaja. Sí ... me refiero a VS2003 y SQL2000. Mi cerebro es un poco borroso a veces ... –

Respuesta

6

que recomiendan las siguientes herramientas (sobre todo porque es lo que estamos usando):

Todos trabajamos en nuestras máquinas locales y tenemos un servidor de compilación independiente que supervisa el repositorio de Subversion (usando CruiseControl.NET) y crea la última revisión en ese servidor.

Usamos 'MSBuild Community Tasks' para incrustar el número de revisión de Subversion en el ensamblaje para que podamos mostrarlo al usuario.

Los "agujeros" más grandes que tenemos en nuestra configuración en este momento están en la base de datos y en nuestras pruebas automáticas.

Actualmente, todos huimos de un servidor de base de datos central. Idealmente, debería trabajar para tener un script que vuelva a crear su base de datos bajo el control de código fuente. Por lo que veo, cada vez que el servidor de compilación reconstruye el sitio, también debería reconstruir la base de datos. También debe tener una secuencia de comandos que generará los datos de prueba que desee en la base de datos.

Con compilaciones de bases de datos como esta, todos pueden trabajar también en una copia local de la base de datos.

Es posible que desee echar un vistazo a la herramienta de SQL Toolbelt (o partes de ella) del software Red Gate - utilizamos las herramientas SQL Compare para implementar esquemas en servidores en vivo y estoy realmente impresionado con ellos.

¡Buena suerte!

+1

Los redgate funcionan mucho mejor que los integrados en VS2008 Database Ed. Buena llamada. – NikolaiDante

12

creo que todo lo que se inclina en la dirección correcta.

Vaya con Visual Studio 2008. Es muy estable con SP1, y puede orientar tanto a la versión 2 como a la versión 3 de .NET Framework.

0

Usamos SourceGear's Vault para el control de versiones y funciona bien para nosotros como un pequeño equipo.

Para el seguimiento de proyectos/errores/soporte utilizamos OnTime 2008 de AxoSoft.

También utilizamos ScrewTurn Wiki para documentar los procedimientos y el código de muestra/mejores prácticas.

Para nuestro proceso de construcción, no hemos automatizado completamente en un proceso diario porque generalmente no trabajamos de esa manera. Sin embargo, para las compilaciones beta y de lanzamiento, solo uso NAnt para hacer una compilación completa después de actualizar los números de versión manualmente (esto lo hago para obtener mejores números de versión para nuestro equipo de soporte).

Y, definitivamente, use Visual Studio 2008. La versión de 2005 realmente tenía muchos problemas en proyectos grandes de VB (al menos para nosotros).

2

Mi recomendación para el IDE y fuente de control:

  • VS2008 con SP1
  • la subversión, con TortoiseSVN (para Windows Explorer) y AnkhSVN (para VS2008)
4

Me emitir un voto para Team Foundation Server. Luego tiene control de fuente, compilaciones automatizadas y (tipo de) seguimiento de errores en un solo paquete, que se integra muy bien con VS 2008.Sin embargo, tiene un precio bastante elevado.

+0

Mis pensamientos exactamente.Cuando se habla de .NET, no hay mejor IDE que Visual Studio. Y VS2008 es el mejor de ellos. Y para Visual Studio no hay mejor control de fuente que TFS. Además, es mucho más que solo el control de fuente. El precio absurdo es el único inconveniente. –

+0

+1, pero el precio es algo que Microsoft debería funcionar en – terjetyl

+0

"pero el precio es algo en lo que Microsoft debería trabajar" - sí ... Me aseguraré de enviar un "Informe de errores de marketing" a su equipo ... –

0

Estoy de acuerdo con VS2008 con SP1, SVN (con Ankh y la tortuga)

Mira en sandcastle/docproject para generar la documentación.

CruiseControl funciona bien.

En cuanto al control de fuente para las bases de datos, puede usar el tipo de proyecto de base de datos en VS2008 y usar SVN (u otra solución de control de origen de su elección) para mantenerlo bajo control de fuente.

+0

Como punto de aclaración, querrá consultar Cruise Control .NET, que es un complemento de Windows/IIS para el proyecto original de Cruise Control. –

8

No importa cuánto tiempo y pensamiento dedique a esto, probablemente nunca termine con un entorno "perfecto". Cada herramienta tiene sus propios quarks y problemas. Sin embargo, aquí hay algo de reflexión:

Vaya a la versión más reciente y mejor de Visual Studio, Visual Studio 2008 SP1.

Si es un suscriptor de MSDN y ha comprado la versión del sistema de equipo de Visual Studio, puede instalar Team Foundation Server (TFS). TFS es un producto bastante elegante que está integrado en Visual Studio. Utiliza Windows Sharepoint Services (WSS), que le da la posibilidad de tener wikis, repositorios de documentos, etc. (básicamente una versión simplificada de Microsoft Office Sharepoint Server). TFS también le dará la versión más reciente de Visual SourceSafe, con la que no he tenido problemas, y Microsoft dice que puede escalar a cientos de miles de usuarios.La edición TFS Workgroup le permitirá usar hasta 5 desarrolladores sin tener que comprar una licencia. Más de 5 usuarios, y tendrás que comprar licencias. También estoy bastante seguro de que tendría que usar SQL Server 2005 para ejecutar TFS, pero podría estar equivocado. Tenemos TFS instalado en una sola caja (nuestro cuadro de desarrollador), y no hemos tenido problemas.

    SO TFS le daría:

  • Colaboración
  • de control de versiones
  • informes sobre Proyecto Estado
  • seguimiento de asuntos
  • La integración en Visual Studio
  • Una gran cantidad de otras golosinas

Para sus compilaciones diarias y continuas, me inclinaría hacia CruiseControl.NET (CC.NET). Intentamos utilizar el sistema de compilación integrado en TFS, pero nos topamos con muchos, muchos problemas (sobre todo debido a la estructura de nuestros proyectos). CruiseControl.NET fue muy fácil de instalar y configurar, y funciona como un campeón. Puede configurarlo para la construcción continua (cada check-in desencadena una compilación) y compilaciones diarias. Es posible que tenga que encontrar algunas formas inteligentes de hacer que CruiseControl.NET haga algunas de las tareas más difíciles (como detener un servicio, etc.), pero no ha podido hacer nada de lo que he necesitado. También es bastante extensible, por lo que puedes escribir un código para que haga lo que quieras, lo cual es una buena característica.

No estoy seguro sobre el control de versiones de la base de datos, pero supongo que puede usar TFS Source Safe para lograr esto.

¡Buena suerte!

+2

"TFS también le dará la versión más reciente de Visual Source Safe". ¿Qué? –

0

Estamos utilizando Subversion con Jira para el seguimiento de errores, gestión de proyectos, FishEye and Crucible para la exploración de código fuente y la revisión de código, y funciona muy bien.

Somos un equipo de 12 desarrolladores repartidos por todo. Somos usuarios desde hace mucho tiempo de FinalBuilder que utilizamos para hacer todas las construcciones y la implementación automatizada, una combinación de proyectos de Visual Studio 2008 y VB.NET, y nos está resultando excepcionalmente bien. Nos dirigimos a las bases de datos de SQL Server 2005/2008 y mantenemos los objetos de la base de datos en el repositorio de control de origen. La mayoría de las veces utilizamos Visual Studio 2008 Database Edition combinada con herramientas de Redgate y funciona muy bien para nosotros, especialmente la gestión de los scripts de cambio y otras cosas. Para nosotros, TFS simplemente no funcionó, aunque su kilometraje puede variar. Descubrimos que era demasiado engorroso, difícil de personalizar el flujo de trabajo y, en lugar de ayudar con el flujo de trabajo, tenía una mala tendencia a interponerse en el camino.

1

Soy un convertido reciente a SourceGear Fortress. Es barato, rápido y confiable.

Me encanta TFS para equipos más grandes (> 20 desarrolladores). Estoy empezando a mojarme los pies con Subversion, por lo que aún no tengo nada que compartir, excepto que fue muy fácil de configurar.

Trac, sin embargo, era muy difícil de ejecutar. Sin embargo, esa es una cuestión de documentación, no del producto en sí.

3

Mi preferencia va a la configuración de Visual Studio 2008/Subversion/Trac/Anck y Tortoise/CruiseControl.NET (TeamCity/Bitten).

No digo que TFS no es un gran producto, pero creo que es "voluminoso". Cambié recientemente de una solución Trac/Subversion a TFS y prefiero la primera configuración. Hay detalles, pero hacen que sea agradable trabajar con ellos.

Ejemplo:

  • TFS enviar correos de confirmaciones y construye, en Trac hay un timeline alimentación fácil. (Hay soluciones temporales para TFS.)
  • cuando hay un nuevo registro, haga clic en el enlace (del canal de información) y se encontrará en el entorno de Trac. Verá un buen diff con el chancgeset anterior. (¿dónde en TFS?)
  • El wiki integrado es un entorno muy agradable para la documentación interna.
  • IntelliSense en el cliente de la tortuga por sus comentarios
  • agradable interfaz web para navegar fuente, documentación al día (era fácil cuando yo estaba en casa)
  • ...

Los pequeños detalles hacen que sea una una herramienta mucho más agradable para mí.

También digo que el equipo era pequeño (también 5 desarrolladores) y necesita algo de tiempo para configurarlo. Estoy de acuerdo en que cuando trabajas con equipos más grandes, TFS es quizás preferible.

1

Mis opciones serían:

mejor control de versiones.

me quedaría con SourceGear Vault - sólido como una roca, funciona como un encanto, su fuente en el almacenada en bases de datos SQL Server -> puede ser fácilmente una copia de seguridad y no es escamosa como Visual SourceSafe.

Wiki u otro sistema de seguimiento de errores y documentación.

Desde mi experiencia personal: FogBugz es su mejor apuesta - simple, fácil, rápida de entender, hace el trabajo muy bien, simplemente funciona y todo el mundo sólo "lo consigue", sin larga y costosa adaptación/personalización y sin mucho entrenamiento - simplemente funciona :-)

proceso de construcción simplificada y construcciones diarias

(estructura visual CruiseControl.NET??)

CruiseControl.NET es una gran opción gratuita, si no te importa gastar un poco de $$$, también miro a FinalBuilder, ya sea como una aplicación de escritorio o de servidor.

El control de versiones de la base de datos de SQL Server

-> utilizan la bóveda! Funciona de la misma manera. Utilice una gran herramienta como Apex SQL Scripter o algo similar para crear y mantener su SQL para crear y actualizar el esquema de la base de datos, y poner esos scripts SQL en Vault.

actualización a Visual Studio 2005 (o 2008)?

Ir a 2008 SP1 en .NET 3.5 SP1 de Visual Studio - sólido y lleno de grandes nuevas características de productividad.

Sólo mi $ 0,02

5

cualquier entorno de desarrollo .NET perfecto tendría una copia de ReSharper instalado. Soy un converso reciente, y Me encanta.

0

Muy sí en VS 2008 con SP1. También recomiendo altamente:

  • ReSharper
  • SourceGear Vault (absolutamente curva de aprendizaje cero procedentes de VSS, con todos los beneficios de la SVN)
0

he escuchado una serie de cosas buenas de TFS ; sin embargo, también existe el factor de costo. Las herramientas que enumeró funcionan muy bien entre sí y son gratuitas.

Una adición que haría es TortoiseSVN para el cliente de Subversion. A los puristas no les gusta, pero el hecho de que se integre con los menús de contexto del shell de Windows (clic derecho) lo hace muy fácil de usar.

Para las versiones SVN, vaya a la versión 1.6 que salió recientemente. La ramificación y la fusión se han mejorado con esta versión.

Trac es una gran herramienta. Asegúrese de leer las reglas de formato TracWiki y TracLinks para sus mensajes de confirmación de SVN. Trac analiza estos mensajes, por lo que si está comprometiendo una solución para el Ticket 123, agregar '# 123' al mensaje SVN le permite a Trac vincular esa confirmación (y todos los archivos asociados con ella) con los tickets de Trac correspondientes. Esto se vuelve especialmente útil si decides cambiar a las versiones delta y cuando decides hacerlo.

Cuestiones relacionadas