Revisión: Visual Studio 2015 abre nuevos caminos

Visual Studio siempre ha sido un gran producto con una serie de características que crecieron con cada lanzamiento. Visual Studio 2015 extiende esa tendencia de formas que nunca esperé ver en Microsoft.

¿Desarrollo de aplicaciones móviles multiplataforma? Marque esa casilla al menos dos veces, una para Xamarin y otra para Cordova, con crédito adicional para C ++ portátil e integración con Unity.

¿Servidores multiplataforma? Marque esa casilla al menos tres veces, para .Net Core, ASP.Net y Entity Framework, y Python y Node.js.

¿Edición y depuración multiplataforma? Si. Visual Studio Code se ejecuta en Mac OS X, Linux y Windows.

¿Gestión del ciclo de vida de las aplicaciones multiplataforma? Se admiten Git y GitHub, y Microsoft ha ampliado el soporte de Git en Team Foundation Server para permitir la integración continua con los mismos tipos de reglas de registro inteligente que Team Foundation Server tiene para su sistema de control de versiones.

¿Compilaciones multiplataforma? Lo tienes. Además de trabajar con Visual Studio Build y MSBuild, Team Foundation Build puede usar Ant, Gradle, Maven, Android Build, Gulp, Xcode y otros.

Por supuesto, Visual Studio aún admite el desarrollo para Windows, ya sabes, y aún incluye todas las tecnologías antiguas para aplicaciones de escritorio de Windows, desde aplicaciones de consola creadas en C ++ con llamadas a la API de Windows hasta aplicaciones de Windows Presentation Foundation en C # y XAML diseñadas en Blend para Visual Studio 2015. Pero la definición de Windows se ha ampliado para Windows 10, con aplicaciones universales de la plataforma Windows. Estas aplicaciones están diseñadas para funcionar sin cambios en hardware que van desde teléfonos hasta tabletas, computadoras portátiles, computadoras de escritorio, consolas de juegos Xbox, auriculares de realidad aumentada, Surface Hubs, servidores y la nube. Aún queda por ver qué tan bien se desarrollará esa visión en particular.

Una opción ligera y multiplataforma: Visual Studio Code

Visual Studio Code es parte del ecosistema de Visual Studio, pero no es Visual Studio propiamente dicho. En cambio, es un editor multiplataforma gratuito que combina el shell Atom Electron de código abierto con varias tecnologías de Microsoft. Lo he usado en Mac OS X y Windows, y me gusta mucho; también se ejecuta en Ubuntu Linux.

¿Por qué no usar simplemente Atom? Para TypeScript, JavaScript, C # y Visual Basic, Visual Studio Code tiene un soporte de lenguaje superior. Para los otros 30 idiomas admitidos, Visual Studio Code tiene paridad con Atom.

¿Por qué no utilizar Visual Studio completo? Puede hacerlo, si tiene una máquina con Windows o una máquina virtual con suficiente potencia, pero Visual Studio Code es un programa mucho más liviano que se inicia más rápido y necesita muchos menos recursos informáticos.

Novedades de Visual Studio 2015

Como mencioné al principio, Visual Studio 2015 incluye un amplio soporte para el desarrollo móvil multiplataforma: instalación e integración de Apache Cordova, instalación e integración de Xamarin, C ++ portátil, un emulador de Android mejorado e integración de Unity.

Puede crear aplicaciones de servidor multiplataforma e implementarlas en servidores Windows y Linux, así como ejecutarlas en computadoras de escritorio y portátiles Mac OS X. El soporte del servidor incluye ASP.Net 5, Python, Node.js y el nuevo .Net Core 5 de código abierto para Windows, Linux y Mac OS X.

En el desarrollo de Windows, existe la nueva generación de aplicaciones universales, nuevas herramientas de diagnóstico y nuevas características de diseño. En el área de productividad, hay una mejor depuración, incluida la depuración de lambdas y la monitorización del rendimiento y la depuración histórica de forma simultánea. En el editor, los procesadores de lenguaje Roslyn encienden una bombilla que aparece cuando y donde hay un problema común en el código, y ofrecen correcciones de código automáticas y refactorización mejorada. Mientras tanto, Visual Studio 2015 tiene muchas actualizaciones de lenguaje de programación, que incluyen C #, Visual Basic, C ++ y TypeScript, junto con extensiones para Python y Node.js.

Visual Studio Online y Team Foundation Server 2015 ahora tienen ganchos de extensibilidad e integración con Trello, Campfire y similares. La función de planificación ágil incluye tablas Kanban y carriles de baño. Ahora puede realizar ediciones rápidas de código y confirmaciones directamente en Visual Studio Online y Team Foundation Server. Solía ​​tener que volver a Visual Studio u otra herramienta de edición de código.

Comprender las ediciones de Visual Studio 2015

La multitud de ediciones de Visual Studio 2015 es suficiente para dar a un revisor un dolor de cabeza deslumbrante. El breve resumen:

  • La comunidad es gratis. Esta edición debería satisfacer a los desarrolladores individuales que no están creando aplicaciones comerciales.
  • Pro con MSDN cuesta $ 1,199. Esta edición es buena para desarrolladores y equipos profesionales.
  • Enterprise con MSDN cuesta $ 6,119 (mucho menos que Visual Studio Ultimate 2013). Esta es una "solución de nivel empresarial con capacidades avanzadas para equipos que trabajan en proyectos de cualquier tamaño o complejidad, incluidas las pruebas avanzadas y DevOps"; en otras palabras, tiene todas las comodidades.

Los SKU Express gratuitos todavía existen, pero Microsoft sugiere usar la edición Community gratuita, que hace más. Test Professional con MSDN todavía existe y puede comprar una copia de Visual Studio Team Foundation Server 2015.

Hablando de otras herramientas de edición de código, Visual Studio Code es un editor de código multiplataforma gratuito (Windows, Linux y Mac OS X) construido en el shell Atom Electron de código abierto, con soporte de lenguaje profundo de Roslyn y el compilador TypeScript, que cubre más de 30 lenguajes de programación en el nivel de resaltado de sintaxis y coincidencia de corchetes, además de algunos en el nivel IntelliSense.

.Net Core 5 es una implementación de código abierto multiplataforma optimizada para la nube de la plataforma .Net que actualmente es compatible con Linux, Windows y Mac OS X. También se ejecuta dentro de contenedores Docker en Linux. .Net Core es un subconjunto refactorizado de .Net Framework, tiene tiempos de ejecución nativos y CLR (aplicación VM), y es compatible con las aplicaciones Windows Store y ASP.Net.

Las aplicaciones de la Plataforma universal de Windows no solo se ejecutan en una amplia gama de hardware, sino que utilizan el rápido tiempo de ejecución nativo .Net. Puede elegir entre los lenguajes C #, Visual Basic, C ++ y JavaScript (incluido Cordova) y construir su interfaz de usuario en XAML, DirectX o HTML. Puede obtener una vista previa de los diseños XAML en Visual Studio en una variedad de dimensiones de dispositivo, desde un teléfono de 5 pulgadas hasta un Surface Hub de 84 pulgadas. Puede utilizar extensiones específicas del dispositivo en aplicaciones universales, siempre que las incluya en un código que compruebe la presencia de las API adecuadas en tiempo de ejecución. Si bien puede diseñar XAML en Visual Studio, la herramienta preferida para el diseño XAML es la renovada Blend para Visual Studio 2015.

Lenguajes de programación actualizados

C # 6 y Visual Basic 14 ofrecen algunas actualizaciones de lenguaje de bienvenida, incluidas nameofexpresiones, operadores condicionales nulos, bloques awaitin catchy finallyy miembros de función con cuerpo de expresión.

Los estándares y el código portátil marcan las mejoras del lenguaje C ++, como la conformidad con los estándares C ++ 11 y C ++ 14 y la inclusión de algunas características de C ++ 17. El compilador de C ++ ahora tiene compilaciones y mejoras más rápidas para la generación de código y la seguridad. No sé si las compilaciones son ahora lo suficientemente rápidas como para eliminar las sesiones de "compilación" extendidas que los codificadores de C ++ usan a menudo para preparar café, visitar las instalaciones y jugar al tenis de mesa. Puede llevar mucho tiempo migrar una base de código grande a una nueva versión del compilador de C ++ y realizar todas las pruebas de regresión necesarias.

F # 4.0 fue creado al aire libre por los desarrolladores de la comunidad de F #, aproximadamente una cuarta parte de los cuales están afiliados a Microsoft. Hay muchas mejoras en el lenguaje y las herramientas, pero las más obvias para mí son el IntelliSense mejorado y la depuración.

TypeScript 1.4 y TypeScript 1.5 (Beta) continúan creando nuevas funciones para trabajar con más patrones de JavaScript, crear mecanografía más rica y utilizar las nuevas funciones de ECMAScript 6.

Instalación de Visual Studio 2015

La instalación de Visual Studio se ha vuelto más granular. Si esto es importante, depende de sus necesidades. Si solo necesita un subconjunto de funciones, puede tener, así como acelerar su instalación y reducir su huella. Si va a instalar todo en cualquier caso, también puede hacerlo de inmediato. Si bien puede agregar piezas a una instalación parcial a pedido, una variación de la ley de Murphy dice que cualquier característica que no instaló inicialmente será esencial en una forma crítica en el tiempo, por lo que la instalación incremental llegará en el peor momento posible.

Me sorprendió gratamente ver que Visual Studio se encargaba de instalar todas las dependencias de código abierto, hasta niveles básicos, como instalar los SDK de Android y Java que necesita Apache Cordova. Instalarlos manualmente puede ser un ejercicio de frustración si se equivoca en el orden.

Tanto en los casos de instalación parcial como total, encontré que las instalaciones de Visual Studio 2015 estaban menos cargadas de peligros y frustraciones que las versiones anteriores, hasta que salió el SDK de Windows 10. Cuando instalé el SDK de Windows 10, descubrí que su Diseñador XAML (una de sus nuevas características más interesantes) falló en un nuevo proyecto vacío. Pasé aproximadamente un día con el equipo de Visual Studio solucionando el problema. Dicho esto, el SDK funcionó bien en otra instalación, por lo que no es un problema generalizado. (Actualización: ahora hay una solución alternativa; consulte la sección "Creación de aplicaciones universales de Windows" a continuación).

Las herramientas de Python en Visual Studio 2015 admiten CPython, IronPython, PyPy, Anaconda y otros compiladores de Python, y le brindan IntelliSense en el editor y depuración interactiva, incluido el modo mixto (Python / C ++) y la depuración entre sistemas operativos.

Desde mi revisión de 7 IDE de JavaScript, las herramientas de Node.js para Visual Studio, ahora en la versión 1.1 RC, han agregado soporte para Visual Studio 2015 (natch) y una nueva plantilla de Dockerfile basada en Linux para facilitar la instalación de su aplicación. y ejecutándose en un contenedor Docker. Para agregar la plantilla Dockerfile a un proyecto Node.js, haga clic con el botón derecho en su proyecto, seleccione Agregar nuevo elemento y seleccione la plantilla Dockerfile.

Esta versión de NTVS también mejora Node.js IntelliSense, el formateo, la depuración, TypeScript, la ejecución de pruebas unitarias y la integración de Npm. Con una descarga adicional, NTVS 1.1 RC admite una nueva extensión de IoT que puede implementar aplicaciones universales de Windows basadas en Node.js en dispositivos Windows IoT Core como Raspberry Pi 2.

Edición de código en Visual Studio 2015

Hace algunos años, tuve una sesión informativa privada del entonces director general del equipo de Visual Studio sobre los planes para la próxima versión de Visual Studio. Después de revisar las diapositivas, me preguntó qué más sugeriría, y le señalé que la convención de subrayado ondulado para la revisión ortográfica en tiempo real en Word podría aplicarse a la revisión de sintaxis en tiempo real en Visual Studio. Siguieron muchos garabatos; la función apareció debidamente en la próxima beta.

Luego me preguntó, con un brillo en los ojos, si quería Clippy en Visual Studio. Riendo, dije: “Todavía no. Tal vez nunca, a menos que las sugerencias que hizo fueran realmente buenas ". (Clippy tenía una reputación terrible entre los usuarios de Word por hacer sugerencias estúpidas de una manera molesta).

El equivalente de Clippy en Visual Studio 2015 es una bombilla de luz, que aparece siempre que el editor de Visual Studio cree que ve un problema de código y tiene una sugerencia, y siempre que escribe “^.”. The Light Bulb no solo sugiere soluciones a problemas comunes de código, sino también una posible refactorización del código. El menú de refactorización ha desaparecido y todas las operaciones de refactorización se han trasladado a Light Bulb. A fin de cuentas, diría que la bombilla es algo bueno.

El cambio de nombre de las variables se ha mejorado considerablemente en Visual Studio 2015; De hecho, puedes ver lo que va a hacer antes de que suceda. El análisis de código en vivo y la corrección automática también se mejoran en gran medida. Parte de la magia es que el análisis se basa en una guía específica con reconocimiento de código para las plataformas de Microsoft y los paquetes NuGet a los que se dirige.

Parece un pequeño cambio, pero ahora puede personalizar, guardar y restaurar diseños de ventanas para Visual Studio. ¿Por qué importa esto? Si cambia periódicamente entre computadoras con diferentes tamaños de pantalla, se ahorrará mucho tiempo simplemente abriendo su diseño optimizado para la pantalla que está usando actualmente.

Visual Studio ahora tiene soporte táctil: desplazamiento (tocar y arrastrar en la superficie del editor en las barras de desplazamiento regulares y mejoradas), pellizcar para hacer zoom, seleccionar una línea completa tocando en el margen del editor, seleccionar palabras tocándolas dos veces y manteniendo pulsado para invocar el menú contextual del editor. Si tiene una máquina de desarrollo con pantalla táctil, debería hacerlo si está desarrollando para Windows 10 o dispositivos móviles, lo encontrará útil.

Y mi mejora de la interfaz de usuario favorita: no más menús TODOS EN MAYÚSCULAS. Buen viaje.

Pruebas, depuración, diagnóstico y supervisión del rendimiento

Aquellos de ustedes que siempre escriben un código perfecto en el primer intento pueden avanzar, no hay nada que ver aquí. El resto de nosotros nos espera un regalo: la depuración de Visual Studio, que ya era bastante buena, ha mejorado aún más.

Los puntos de interrupción condicionales existen desde hace mucho tiempo. Ahora también podemos especificar acciones a realizar cuando se alcanza un punto de interrupción. Eso incluye puntos de interrupción en propiedades autoimplementadas y el uso de expresiones lambda en acciones de puntos de interrupción, expresiones de observación y la ventana Inmediato.

Dos nuevas herramientas, el Live Visual Tree y el Live Property Explorer, le permiten examinar el árbol visual de su aplicación Windows Presentation Foundation o Windows Store en ejecución. Los nuevos diagnósticos disponibles durante la depuración son la lista de eventos, la herramienta de uso de memoria y el gráfico de uso de CPU. Mientras tanto, mientras ejecuta código en el depurador, Visual Studio lo cronometra automáticamente y le indica el tiempo transcurrido (estimado) y de CPU para el código. Solía ​​tener que trabajar en el rendimiento después de haber depurado.

Cuando no esté depurando, puede usar una nueva herramienta Application Timeline para realizar un seguimiento del consumo de recursos del sistema a lo largo del tiempo para las aplicaciones Windows Presentation Foundation, Windows Store 8.1 y la plataforma universal de Windows XAML. Del mismo modo, la herramienta de diagnóstico de red le permite realizar un seguimiento de las operaciones de red HTTP para las aplicaciones de la Tienda Windows y las aplicaciones universales de Windows. Y si está desarrollando aplicaciones DirectX (a menudo, pero no siempre, juegos), ahora puede ver gráficos de tiempo de fotogramas, velocidad de fotogramas y utilización de GPU mientras las aplicaciones se ejecutan en vivo. Estos indicadores le darán una idea de si la GPU o la CPU podrían ser el cuello de botella de rendimiento de su aplicación.

Tanteador Capacidad (30%) Rendimiento (30%) Facilidad de uso (20%) Documentación (10%) Valor (10%) Facilidad de desarrollo (20%) Puntaje general
Visual Studio 2015 10 9 8 8 9 0 9.0