Welcome to Comunidad .NET de Cd. Juárez Sign in | Join | Help

Browse by Tags

All Tags » visual studio

Microsoft anuncia Visual Studio 2010 y .NET Framework 4.0

Ayer Microsoft se adelantó al PDC y anunció que Visual Studio 2010 (también conocido por Visual Studio 10 o “Rosario”) y el .NET Framework 4.0 estarían disponibles a finales del 2009 o principios del 2010—seguramente para coincidir con el lanzamiento de Windows 7, tal como lo hicieron con .NET 3.0 y Windows Vista.

Lo curioso, sin embargo es que no dió muchos detalles al respecto.  Según esta página en MSDN, los “pilares” de esa versión son [interpretación mía]:

  • Democratizar el ciclo de desarrollo.  Que en términos prácticos parece que se trata de incorporar aún más modelación en Visual Studio, incluyendo—finalmente—diagramación en UML.  Checa este video en Channel 9 al respecto. Parece que también van a mejorar algunas de las herramientas de pruebas y documentación, sobre todo para poder reproducir pulgas elusivas.
  • Facilitar las tecnologías emergentes.  No sé exactamente a qué se refieran, ¿quizá soporte nativo a Silverlight 2 y cosas así? ¿Facilitar cosas de cloud computing? ¿Desarrollo para mulitprocesadores/multicore?
  • Inspirar deleite en los desarrolladores.  Esto me suena a puro marketingspeak :)
  • Seguir la ola de plataformas de próxima generación.  Esto pudiera referirse a tecnologías asociadas con Windows 7 o Server 2008 R2, o a cosas relacionadas con Live Mesh—parte de la iniciativa de cloud computing de Microsoft—que estoy seguro también tendrán algo de integración.
  • Aplicaciones departamentales avanzadas.  Supongo que se enfocarán a facilitar el desarrollo no solo de “aplicacionzotas” sino también “aplicacioncitas”—que luego crecen como monstruos y luego las quieren usar en todos lados.  ¿Significa que integrarán algunos pricipios de Access? [eek]

Hay una serie de videos ya en Channel 9 acerca de VS 2010.  El blog de Arturo también tiene algo más de información en español al respecto.

Enjoy cool
Posted from Diario de un Dotnetero | 0 Comments
Filed under:

Visual Studio 2008 Service Pack 1 ya está disponible

Al menos para suscriptores de MSDN.

Official MSDN Subscriptions Blog : Visual Studio 2008 Service Pack 1 files are also now available

Oh, y también ya soltaron la versión RTM de SQL Server 2008.

Enjoy

Posted from Diario de un Dotnetero | 0 Comments
Filed under:

Creo que he estado trabajando mucho...

Me salió esto hoy.  Creo que Visual Studio está tratando de decirme algo...

Atajos de teclado para Visual Studio

Una de las maneras más fáciles de incrementar tu productividad cuando utilizas casi cualquier programa es aprenderte los atajos de teclado—los mentaos keyboard shortcuts, pues.  De hecho tengo amigos que odian levantar las manos del teclado cuando están programando.  Si alguna vez has usado algún editor de texto como vi, quizá hayas apreciado que una vez que dominas la complejidad de los comandos, en realidad se siente como si estuvieras "platicando" con el editor. Y aunque yo no llegaría al extremo de recomendar que manejes Visual Studio con los comandos de vi, sí recomiendo enormemente que te aprendas algunos de los más comúnes que ya vienen de cajón con el IDE.

El problema es que Visual Studio tiene 8 millones 557,934 comandos.  Bueno, quizá algunos menos, pero aún así son un titipuchal.  Y lo que es peor, los atajos de teclado cambian de acuerdo a la configuración general de Visual Studio.  Esta es la configuración que te pregunta la primer vez que arrancas el IDE o si das Tools>Import and Export Settings...>Reset all settings.

Ventana de diálogo de configuración general de Visual Studio

Aquí es donde ayudan algunos documentos de referencia rápida.  Si primordialmente desarrollas en Visual Basic, y utilizas esa configuración (Visual Basic Development Settings), aquí hay un PDF de Microsoft que los resume. 

Si usas la configuración de Visual C# Development Settings, para desarrollar primordialmente en C#, están este para Visual Studio 2005 y este otro para Visual Studio 2008.

Sin embargo, yo utilizo la configuración para desarrollo general (General Development Settings) porque desarrollo tanto aplicaciones Web como Windows, a veces en C# y a veces en Visual Basic, aparte que ya me había aprendido algunos atajos desde versiones anteriores de Visual Studio.  Como no encontré ninguna referencia rápida para esta configuración, creé mi propio documento.  Puedes descargarlo del sitio de la Comunidad.

Mi recomendación personal es, no intentes aprenderlos todos de un zopetón.  Dice un proverbio: "¿Cómo te comes un elefante? Un bocado a la vez".  Así que mejor escoge un grupo de comandos y practica cada uno por separado, repitiéndolo al menos 20 veces.  Lo que yo hice fue agarrar una archivo con código y practicar un comando a la vez en diferentes partes del archivo mientras lo "vocalizaba mentalmente" hasta que quedaba grabado en mi memoria muscular.  Luego practicaba el siguiente comando hasta terminar el grupo.  Al día siguiente me enfocaba en un grupo distinto, y así sucesivamente.

Cómo crear tus propios atajos

Por supuesto, también puedes definir tus propios atajos.  Estos atajos pueden ejecutar un comando del IDE o alguna macro que hayas creado para alguna tarea específica.  Por ejemplo, hay dos atajos que a mi me ha sido útil definir: uno para comparar el archivo actual contra la versión en el controlador de código y otro para obtener el historial del archivo actual en el controlador de código.

Para definirlos, primero ve a Tools>Options... y luego Environment>Keyboard.  Al hacerlo verás la siguiente ventana:

En la parte donde dice Show commands containing, teclea parte del comando, p. ej. "compare".  Esto traerá una lista de posibles comandos.  En este caso, el que busco es File.Compare.  Luego, selecciona el comando adecuado de la lista y pon el cursor en la parte donde dice Press shortcut keys. Presiona la combinación que desees utilizar.  Si la combinación ya está siendo utilizada por algún otro comando, esta información será mostrada en la parte de abajo donde dice Shortcut currently used by.  En mi caso escogí la combinación Ctrl+Alt+F,C para finalmente darle clic en el botón Assign

Repite los mismos pasos para el comando File.ViewHistory y utiliza el atajo Ctrl+Alt+F,H—o cualquier otra combinación que más te guste.

En fin, creo que esto da la idea.  Enjoy smile_shades

Cómo configurar IIS 7 en Windows Vista para desarrollar con Visual Studio 2005 y SQL Server 2005

Aunque Windows Vista ya tiene más del año que salió, apenas hasta estos días pude migrar mi máquina primaria de trabajo a este sistema operativo—solo digamos que la empresa para la que chambeo es muuuuuuy cautelosa con este tipo de cambios.  Y aunque también ya salió Visual Studio 2008, aún tengo que utilizar la versión 2005.

Desarrollo principalmente aplicaciones ASP.NET y también necesito tener SQL Server 2005 Developer instalado localmente para correr tanto la base de datos como Reporting Services. 

Pero al intentar instalar estas herramientas me topé inmediatamente con los cambios en la manera que instalas IIS en Windows Vista.  Ya me habían platicado que IIS 7 era más modular, pero no me habían dicho qué tanto.  Por default, IIS ni siquiera viene habilitado, así que lo primero que tienes que hacer es instalarlo. 

Es sencillo, te vas a Control Panel > Programs > Turn Windows features on or off.

De las opciones que aparecen, palomea (osea dale clic en el checkbox) a lo siguiente, en este orden:

  1. Internet Information Services.  Esto selecciona automáticamente lo necesario para correr IIS.
  2. IIS > WWW Services > Application Development Features > ASP.NET.  Esto selecciona automáticamente lo necesario para correr aplicaciones de ASP.NET.
  3. IIS > Web Management Tools > IIS 6 Management Compatibility > IIS Metabase and IIS 6 configuration compatibility.  Este componente es necesario para Visual Studio 2005.
  4. Ya que andas por ahí, selecciona IIS 6 WMI Compatibility.  Este lo necesita SQL Server 2005.
  5. IIS > WWW Services > Common Http Features > HTTP Redirection.  Este también lo necesita SQL Server.

Da clic en OK, y se instalarán los componentes seleccionados.

Como puedes ver, solo necesitas 1, 2 y 3 para desarrollar ASP.NET con Visual Studio 2005.  Y si necesitas SQL Server 2005, agregas las opciones 3, y 4.

Si intentas instalar SQL Server sin lo anterior, es muy probable que recibas una advertencia como la siguiente:

Enjoy smile_shades

¡Visual Studio 2008 ya está disponible!

Ya está disponible Visual Studio 2008 para suscriptores de MSDN.  Y si no has gastado los miles de dólares en una suscripción, pues de perdis puedes jugar utilizando las versiones Express que son gratuitas.  Ya liberaron Visual C# 2008 Express Edition y Visual Basic 2008 Express Edition—ambas con soporte para desarollar WPF, naturalmente—y Visual Web Developer 2008 Express Edition que no solo trae las mejoras que había comentado previamente, sino que también trae soporte para Popfly—para aquellos que gustan de los mashups y cosas de esas.

Enjoy.

¿Ya estás listo para Visual Studio 2008?

Con el anuncio ayer que hizo Microsoft de que Visual Studio 2008 y el .NET Framework 3.5 estarán disponibles para suscriptores de MSDN a finales de este mes (can you say: wohoo! thumbs_up) es hora de comenzar a prepararse para varias novedades que trae.Tecnologías en las diferentes versiones del .NET Framework

En lo personal me tiene emocionado el lanzamiento porque creo que le agregaron cosas que ya urgían.  Comenzando por el soporte nativo a las tecnologías de .NET 3.0 y ASP.NET AJAX—no más andar instalando extensiones y adiciones por separado.  Por ejemplo, me acaban de dar una máquina nueva en el trabajo, y solo de Visual Studio tuve que instalar:  Visual Studio 2005, Visual Studio 2005 SP1, .NET 3.0 Framework Runtime, Windows SDK February 2007 update, Visual Studio Extensions for WCF & WPF November 2006 CTP (que no funciona muy bien), Visual Studio Extensions for WF, ASP.NET AJAX y ASP.NET AJAX Control Toolkit.  Cuéntalas: OCHO cosas que se reducirán a uno o dos.

Además, finalmente le agregaron soporte decente para CSS y un editor y debuggeador de JavaScript excelente, lo cual es música para los oídos de desarrolladores web como yo.

"¡Pero aún hay más!", como dirían los vendedores: LINQ—una tecnología que promete cambiar cómo lidean los programadores con el acceso a datos, sin tener que salirse del paradigma de C# o VB—, soporte para Silverlight y más (whew!).

En fin, como una imágen dice más que mil palabras, aquí está un poster (PDF) que pueden descargar e imprimir de los tipos y espacios de nombre más comúnes con .NET 3.5.

Además, el 14 de noviembre—¡osea en menos de dos semanas!—tendremos en Ciudad Juárez el Tour Tecnológico 2007 de Microsoft.  Este es un evento como el CodeCamp que tuvimos en abril de este año o el Community Dev Day del año pasado así que no te lo pierdas. 

Tour Tecnológico Microsoft 2007

La agenda es:
8:30  Registro
8:45 Bienvenida
9:00  Características principales de VS 2008 y el .Net framework 3.5
10:00 Construyendo Clientes inteligentes usando Visual Studio 2008, WPF y Expression Blend
11:00 Receso
11:30 Construyendo aplicaciones móviles usando Visual Studio 2008 y el .NET Compact Framework 3.5
12:30 Introducción al ciclo de desarrollo con Visual Studio Team System

Para registrarte ve a esta dirección: http://www.mslatam.com/spanish/msdn/mexico/tour2007/ luego selecciona Lista de Eventos > Chihuahua > Cd. Juárez.

OJO, que en esta ocasión el evento será en uno de los edificios de la UACJ (el que está por la Avenida del Charro), NO será en el Tec de Monterrey, donde normalmente tenemos las reuniones y eventos.

Espero verlos ahi. smile_wink

Diferencias en herramientas de diferencias e integración con SourceGear Vault

Cuando desarrollas software como parte de un equipo, es bastante común que en algún momento tú y Fulanito De Tal modifiquen el mismo archivo para dos cambios distintos y que tengas que reconciliar las diferencias antes de que puedas hacer el check-in. Pero a menudo, las herramientas que vienen con el controlador de código son HO-rrendas (SourceSafe 6.0 anyone?)

Es por eso que una buena herramienta de diferencias es escencial en el toolkit de un desarrollador, y si eres igual de codo ejem, digo... práctico que yo, pues siempre buscas lo bueno, bonito y barato (léase gratis, de preferencia).  Así que voy a mencionar 3 de mis favoritas en esta categoría: WinMerge, DiffMerge y BeyondCompare.  Todas ellas soportan básicamente las mismas características: comparación de fólderes, múltiples archivos, y archivos con diferentes encodings, pero también tienen uno que otro extra que las hace diferentes e interesantes.

Finalmente, veremos también cómo hacerle para integrarlas a SourceGear Vault (el controlador de código que uso en mi trabajo) de manera que solo tengas que darle clic derecho en el Solution Explorer de Visual Studio, selecciones "Compare..." y voilá, compares la versión local contra la versión controlada.

WinMerge

WinMerge es una herramienta de esas que son gratis en todo el sentido de la palabra.  Es gratis para descargar y open source.  De las cosas interesantes que ofrece son que permite la creación de los parches de código (para aquellos controladores como CVS, supongo) y tiene integración al shell de Windows, incluso en las versiones de 64 bits (osea que sale si le das un clic-derecho a un archivo en Windows Explorer, te sale la opción para comparar archivos). 

De las cosas que no me gustan (y dirás que qué payaso, pero en fin) son que la interfaz está un poco fea, estéticamente hablando y no tan intuitiva. Solo corre en Windows, y la capacidad de editar archivos a la hora de hacer el merge es limitada.  Pero aún así es una herramienta bastante competente.

Puedes ver algunos screenshots aquí, y descargalo desde acá.

DiffMerge

Vault viene con una herramienta llamada DiffMerge la cual solo la obtenías con el producto y no era muy robusta.  Sin embargo, la semana pasada Eric Sink anunció que DiffMerge 3.0 ahora está disponible de manera gratis y separada.  La nueva versión tiene varias bondades que la anterior carecía: comparación de 3 archivos a la vez, soporte para edición de archivos y oh sí, corre en Windows, en Mac OS X o en Linux (!)

De las cosas que no me gustaron está que no tiene integración con el shell de Windows, limitando un poco la capacidad de hacer comparaciones rápidas.  Además, cuando comparas fólderes enteros tarda un poco ya que lee todos los archivos en todos los subfólderes de un solo golpe.  Pero si no te importa esto, pues vale la pena que lo pruebes.

Puedes ver algunos screenshots aquí, y descargarlo desde acá.

BeyondCompare

BeyondCompare es una de las herramientas que cuesta dinero, pero no mucho ($30 dlls por una licencia individual).  De hecho, nosotros compramos 10 licencias a $13 dlls cada una, lo cual es una ganga si lo comparan con otras como Araxis Merge, donde UNA licencia cuesta $130 dlls.  He usado BC por años y cada versión solo se pone mejor.  Soy fan, y al parecer no soy el único.

Aparte de lo estándar, el feature que nos mantiene con este producto es la habilidad de exportar el reporte de diferencias a un archivo HTML (o XML si así lo deseas). Ninguna otra herramienta barata o gratis que yo haya visto trae esto.  Nosotros lo utilizamos para la documentación de los cambios al código, y como parte de nuestro proceso de revisión de código para que otros desarrolladores puedan darle el visto bueno antes de que se le haga check-in a los cambios. 

En la columna de "contras" está que carece de la capacidad de hacer un merge automático--lo cual podría ser irrelevante si eres igual de desconfiado que yo en esas operaciones.  Y su capacidad de edición de archivos es limitada.  Sin embargo, parece que van a agregarle todo eso a la versión 3.0 de BC que va a salir a finales de este año.  No estoy seguro si la integración al shell que trae funcione bajo 64 bits. 

Puedes descargar una versión shareware de 30 días desde aquí.

Integración de herramientas de diferencia a SourceGear Vault

En mi equipo usamos Vault de SourceGear como nuestro controlador de código.  No les voy a escribir una carta de amor sobre el producto, pero sí les diré que es lo que SourceSafe debió ser desde un principio (¿y les comenté que está hecho en .NET?)

El caso es que una de las razones por las que Vault me cae bien, es que te permite configurar la herramienta que desees utilizar para las comparaciones (diff) o para la reconciliación de cambios (merge). Para hacerlo solo tienes que ir a las opciones de Visual Studio y de ahí acceder a las de Vault. 

  • Desde Visual Studio, selecciona "Options..." del menú "Tools".
  • Selecciona "Plug-In Settings" que está debajo de "Source Control" al lado izquierdo.
  • Da clic en "Advanced…" (esto te llevará a las opciones de Vault)
  • Selecciona "Diff/Merge" del lado izquierdo.

Lo único que tienes que hacer despues de eso, es especificar el programa y los argumentos que le vas a pasar.

Si quieres usar WinMerge, tienes que especificar lo siguiente (tomados de esta página):

Diff Program: C:\Program Files\WinMerge\WinMerge.exe\
Diff Arguments: /dl "%LEFT_LABEL%" /dr "%RIGHT_LABEL%"  "%LEFT_PATH%" "%RIGHT_PATH%"
Merge Program: C:\Program Files\WinMerge\WinMerge.exe\
Mege Arguments: /dl "%WORKING_LABEL%" /dr "%OTHER_LABEL%" "%WORKING_PATH%" "%OTHER_PATH%" "%DEST_PATH%"

Si quieres utilizar DiffMerge 3.0, entonces solo tienes que modificar la ruta al ejecutable que viene con la configuración de Vault.  Quedaría entonces, así:

Diff Program:

C:\Program Files\SourceGear\DiffMerge\DiffMerge.exe

Diff Arguments:

/ro1 /ro2 /title1:"%LEFT_LABEL%" /title2:"%RIGHT_LABEL%" "%LEFT_PATH%" "%RIGHT_PATH%"

Merge Program:

C:\Program Files\SourceGear\DiffMerge\DiffMerge.exe

Mege Arguments:

/ro1 /ro3 /merge /title1:"%WORKING_LABEL%" /title2:"%DEST_LABEL%" /title3:"%OTHER_LABEL%" /result:"%DEST_PATH%" "%WORKING_PATH%" "%BASELINE_PATH%" "%OTHER_PATH%"

Y finalmente, si quieres utilizar BeyondCompare, entonces los argumentos serían:

Diff Program: C:\Program Files\Beyond Compare 2\BC2.exe
Diff Arguments: /title1="%LEFT_LABEL%" /title2="%RIGHT_LABEL%" "%LEFT_PATH%" "%RIGHT_PATH%"

O puedes mezclar un poco las cosas.  Por ejemplo yo uso BeyondCompare para la funcionalidad de comparación y DiffMerge 3.0 para la funcionalidad de reconciliación.

Conclusión

Una buena herramienta de diferencias es escencial para tu kit de desarrollador.  Hay varias en el mercado que son gratis o bastante baratas y que pueden integrarse con tus herramientas de desarrollo.  Tómate un tiempecito para echarles un ojo y escoger la que mejor se acomode a tus necesidades.

Editor de code snippets para C# y VS2005

Hace rato había platicado de la chidez de los code snippets en Visual Studio 2005.

Hoy se me ofreció hacer uno rápidamente. Y aunque es relativamente sencillo hacerlo a pata, en realidad no tenía tiempo de echarme la documentación para hacerlo. Necesitaba un "editor" para sinppets, pero el único que hasta hoy conocía es para Visual Basic 8.

Afortunadamente, este vato se creó un programita llamado Snippy. Puedes descargarlo de aquí.

El programita te genera el archivo .snippet; lo grabas en un directorio debajo de My Documents/Visual Studio 2005/Code Snippets/Visual C# y listo. Ni siquiera tienes que reiniciar Visual Studio.

Code Snippets para Visual C# 2005

Después de mucho buscar y esperar, finalmente encontré los Code Snippets para Visual C# 2005. Les recomiendo mejor bajarlos todos de un guamazo, en lugar de uno por uno, y luego hagan lo que dice en esta página.

Para los que no saben de code snippets, este es un feature de Visual Studio 2005 que te permite insertar un machote (sin albur) de código pre-definido para tareas sencillas y comúnes. Esto facilita enormemente las cosas para la raza que apenas comienza a aprender, ya que con la enorme librería de clases del .NET Framework a veces parece difícil hacer cosas sencillas, como cómo leer un archivo o registrar un evento en el EventLog de la máquina.

Los proyectos de VB 2005 ya traen de cajón un montón de snippets, pero si querías hacer lo mismo con C#, te tenías que conformar con unos patéticos para cosasa como for's o if's. Supongo que asumieron que si sabías C# deberías saber lo que estabas haciendo...

En fin, lo único que tienes que hacer para usarlos es dar clic derecho en el editor de código... Insert Snippet... y te da un menú para que escojas una tarea de diferentes categorías, como el siguiente ejemplo (dale clic a la imágen para verla bien):
Otra alternativa es utilizar el shortcut (atajo pues) del snippet--en el ejemplo de arriba sería appEvent. Del editor de código, comienzas a teclear el shortcut del snippet... el IntelliSense lo reconoce, TAB + TAB--mi nueva combinación favorita--y listo, en menos de 2 segundos tienes tu código. De ahí solo tienes que llenar las cajas resaltadas, y estás listo pa'l baile.