¿ Visual Studio Code ?

La mayoría quedamos marcando ocupado cuando supimos que Microsoft tenía un editor para escribir donde fuera.

Así que corrí al Mac, y descargué la aplicación. Al abrirla … mi reacción fue: “Pero si esto es un SublimeText! ” Y si, es parecido. Otros lo pueden encontrar parecido a Atom. Captura de pantalla 2015-04-30 a las 0.55.42

Entonces dije: “ok, hagamos algo. Quiero un sistema chico en C# que corra en el Mac, y ocupando este nuevo editor”… Y ahí me quedé … no encontraba la opción para crear un nuevo proyecto o para configurarlo D:

Resulta que VSCode está orientado a carpetas/archivos, razón por la cual no podemos “crear” un proyecto directamente desde VSCode. Para “hacer” algo, tenemos que recurrir a yeoman para que nos cree un “proyecto. Había escuchado hablar sobre yerman hace un año atrás en la StarTechConf que se realizó en Chile … y nunca más escuché de él … nunca siquiera lo había usado… así que ahora va una pequeña introducción como para quedar bien😀

Yeoman es una herramienta para, a palabras simples, generar el proceso de “iniciar” un proyecto. Crea el esqueleto de carpetas, descarga dependencias, etc. Todo esto usando Bower y Grunt.

Por ejemplo, en mi caso siempre creo 4 carpetas para mis sistemas: asset, model, view, controller. Descargo bootstrap y jQuery en asset, genero las clases en model, y así. Es un proceso que hago siempre y pierdo unos minutos en hacerlo. Si usara Yeoman, sería automágico😀

Para instalar Yeoman, primero necesitamos node y su npm. Una vez que lo tengamos instalado (npm) seguimos con Yeoman, Grunt, Bower y un generador “especial” para apps de asp.net

npm install -g yo grunt-cli generator-aspnet bower

Y eso es todo, ahora podemos crear un directorio/proyecto usando Yeoman:

yo aspnet

Este generador nos da distintas opciones a elegir. Para una app web, marcan obviamente la que indica Captura de pantalla 2015-04-30 a las 1.33.55 y luego de indicar un nombre nos generará todas las carpetas con el árbol correspondiente. Algo así: Captura de pantalla 2015-04-30 a las 1.35.14

Ahora que ya tenemos el “proyecto” saltamos a VSCode y buscamos la carpeta creada. Automágicamente nos reconoce todo … pero, al menos en mi PC, me daba un error al no “entender” los archivos en C# Captura de pantalla 2015-04-30 a las 1.39.02

Dicha herramienta era OmniSharp, quién se encarga de que cualquier editor tenga el autocompletado, resaltado de errores, y virtualmente todas las “ayudas” que Visual Studio te da al escribir en C#. Pero para que ella funcione, necesitas tener instalado “Mono“. Captura de pantalla 2015-04-30 a las 2.02.44

Ahora, abrimos nuevamente VSCode y no hay errores … pero si un warning Captura de pantalla 2015-04-30 a las 2.03.50

Se refiere a DNX, que son herramientas propias de ASP.NET 5 que permiten que las apps creadas funcionen tanto en Windows como en Mac/Linux.

Para instalarlo, nos vamos a Homebrew:

brew tap aspnet/dnx
brew update
brew install dnvm

y una vez descargado, saltamos nuevamente a VSCode y ahora nos mostrará un aviso de que tenemos dependencias que no encuentra y que hagamos un “restore” para solucionar el problema descargando dichas dependencias.Captura de pantalla 2015-04-30 a las 2.40.45.

Desde la consola, en la carpeta creada por yeoman:

dnu restore

Si no encuentra el comando, es porque les faltó hacer esta parte:

Checking connectivity... done.
==> Checking out branch dev
==> bash -c 'source /usr/local/Cellar/dnvm/1.0.0-dev/libexec/dnvm.sh; dnvm upgra
==> Caveats
Add the following to the ~/.bash_profile, ~/.bashrc or ~/.zshrc file:

  source dnvm.sh

==> Summary
🍺  /usr/local/Cellar/dnvm/1.0.0-dev: 4 files, 56K, built in 14 seconds

Entonces, luego de reiniciar la consola, y correr el dnu restore, tenemos algo así Captura de pantalla 2015-04-30 a las 2.50.34Ahora si, volvemos a VSCode y lo único que nos falta es levantar el “servidor” y probar. Para ello, llamamos el “kicker” con las teclas ⇧⌘P y escribimos kestrel (que es un comando creado en project.son). Éste comando nos abre la consola y levanta el servidor.

Accedemos desde http://localhost:5001 y … nos da el siguiente error Captura de pantalla 2015-04-30 a las 2.57.03

Es un error conocido por la comunidad, por suerte, así que tiene solución:

  1. Dar de baja el servidor
  2. Ejecutar el siguiente comando en la consola el siguiente comando, y luego iniciar nuevamente el servidor
export MONO_MANAGED_WATCHER=disabled

Listo ! Captura de pantalla 2015-04-30 a las 23.25.30

Fuentes:

Acerca de MaritoCares

Ingeniero Informático. Con tendencias a la programación en [C#, VB].NET, Java(Web principalmente...), PHP, JavaScript, algo mínimo de [ruby, python], y el clásico C.
Esta entrada fue publicada en Aplicación y etiquetada , . Guarda el enlace permanente.

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