[Off-topic] Python Tools para Visual Studio

Si bien este es un blog orientado a C# y tecnologías .Net, este post no deja de ser un aporte que puede resultar útil. Por motivos académicos tuve que trabajar con Python, lenguaje que había utilizado muy poco en algunos trabajos prácticos de la universidad. Y cuando nos vamos de .Net, una de las cosas que más extrañamos es Visual Studio, un entorno de desarrollo muy completo y cómodo (y que por suerte sigue evolucionando con nuevas versiones).
Y es aquí cuando un compañero me hizo recordar lo que habíamos leído hacía un tiempo, de que se podía usar Python con Visual Studio. Leyendo nos encontramos con Python Tools for Visual Studio, un componente para Visual Studio que nos permite integrarle dicho lenguaje.

La instalación es sencilla, solo debemos ir al link anterior y realizar la descarga según la versión de Visual Studio que tengamos (cuenta con soporte para Visual Studio 2010, 2012 y 2013). Una vez descargado y finalizada la instalación, abrimos Visual Studio y al crear un nuevo proyecto veremos las siguientes opciones:

Pytools - Proyectos disponibles
Tipos de proyectos disponibles en Python

Como se ve en la imagen anterior, podemos crear tanto aplicaciones sencillas de consola en Python como sitios web a través de la utilización del framework Django.
La interfaz es muy agradable, similar al original de Visual Studio. A continuación les dejo una captura de algunas clases de Python, en las cuales vemos que incluso se muestra el tipo de los datos, el cual es inferido a partir del uso previo:

Pytools - Interfaz de clases
Visualización del código fuente de clases

Y lo mejor de todo (sobre todo para novatos en Python como lo soy yo) es que tiene autocompletar. Esto sin duda es muy útil, ya que además de ser una ayuda efectiva en la productividad de nuestras tareas, nos permite ver los métodos que implementa una clase, sus parámetros, etc. Esto nos ahorra mucho tiempo, cuando no podemos encontrar donde está determinada funcionalidad o los parámetros que requiere:

Pytools - Autocompletar
Contamos con el siempre útil autocompletar en la mayor parte de los casos

Siguiendo con la temática de este post, orientado a la web, vamos a ver como crear una aplicación de Django utilizando esta herramienta. Lo primero que debemos hacer es crear un nuevo proyecto Django Web Project:

Pytools - Crear proyecto Django
Nuevo proyecto de Django

Al confirmar la opción nos aparecerá la siguiente ventana, en la cual se nos solicita la confirmación de como queremos trabajar con los paquetes externos. Para esto, seleccionaremos la primer opción.

Pytools - Env requerido
Confirmación de como vamos a trabajar con los paquetes externos

Al seleccionar la primer opción de la ventana anterior, se nos solicitará que crearemos el entorno virtual. Allí seleccionaremos la versión de Python que querramos utilizar (dependiendo de las que tengamos instaladas en nuestra PC):

Pytools - Crear env
Creación del entorno virtual

Con esto ya tendremos nuestro proyecto de Django creado, aunque en la pestaña de resultados podremos ir viendo como sigue instalando los paquetes necesarios:

Pytools - Instalacion requerimientos
Instalación automática de paquetes iniciales

Una vez finalizada la instalación de los mismos, ya tenemos nuestra aplicación lista para empezar a trabajar (y ejecutar el template por defecto, si queremos ver que todo funciona correctamente). Tenemos tres partes para destacar:

Pytools - Estructura proyecto
Estructura del proyecto creada
    1. Env: Es aquí donde podremos instalar los nuevos paquetes, mediante el uso de pip (equivalente a NuGet). Para ello deberemos hacer click derecho sobre env y seleccionar la opción Install Python Package. Allí ingresaremos el nombre y la versión del mismo (esto último opcional) y se realizará la descarga con la utilización de pip.
    2. app: Esta es la aplicación web en sí, la cual nos crea este template de Python Tools. Allí estará tanto la lógica de negocio, como los controladores (vistas en Django) y las vistas (templates en Django).
    3. Archivos del proyecto: Estarán aquellos archivos globales de configuración del proyecto, ya que puede existir más de una aplicación. Generalmente, se trabajará con settings.py para las configuraciones y url.py para las rutas.



A su vez, al hacer click derecho sobre el proyecto e ir a la opción “Python” nos encontraremos con varias opciones útiles a la hora de trabajar con Django, como la consola de Django o la sincronización de la base de datos:

Pytools - Opciones
Opciones para trabajar con Python y Django

Y eso es todo, si ejecutamos la aplicación veremos como funciona correctamente. Incluso podemos publicarla en Azure, como si estuviéramos hablando de un sitio .Net sin mayores esfuerzos ni configuraciones.

Espero que les haya sido útil el post. La idea no es hablar de Python específicamente (ya que no estoy calificado para hacerlo), sino dar una alternativa que le sea útil a alguien que, como yo, está acostumbrado (y a gusto) con el ambiente .Net y tiene que incursionar en Python.

Además del link oficial del proyecto (ubicado al inicio de este post), les dejo el del post de Scott Hanselman donde comenta este tema.

Gracias por leer!

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s