Un tour por el Wollok IDE
A continuación te vamos a contar cuáles son las principales herramientas con las que cuenta el entorno integrado de Wollok. También tenés este tutorial paso a paso que te ayudará a conocer las herramientas
Si querés trabajar con un tema oscuro, te recomendamos que te descargues este archivo de configuración y luego lo importes en tu entorno de trabajo, como lo muestra el siguiente video:
Una vez que importaste las preferencias, reiniciá Wollok, y al recargar vas a ver las herramientas adaptadas para visualizarse con un fondo oscuro:
El editor de Wollok ofrece desde ya coloreado de sintaxis, pero también viene con capacidades de autocompletado.
Aquí utilizamos asistentes de contenido más específicos para, por ejemplo, saber qué mensajes enviar a un objeto:
Familiarizarse con el editor es fundamental para sentirnos cómodos en el ambiente de trabajo. Por eso te queremos contar algunos de los shortcuts que va a hacerte más feliz la estadía.
Herramientas para buscar...
Resumen de shortcuts útiles
Teclas | ¿Qué hacen? |
---|---|
Ctrl + Espacio | Autocompletado |
Ctrl + 1 | Ayuda contextual para resolver un problema (ver Quick Fixes) |
Ctrl + Shift + F3 | Busca un elemento (objeto, clase, etc.) dentro del ambiente |
Ctrl + O | Busca una definición dentro de un archivo |
F3 | Va de una referencia a su definición |
Alt + Flecha Arriba | Flecha Abajo | Mueve toda la línea hacia arriba o abajo |
Ctrl + D | Elimina una línea |
Ctrl + Shift + C | Comenta una línea |
Alt + Shift + R | Renombra una referencia |
F2 | Renombra un archivo |
Ctrl + S | Guarda un archivo |
Ctrl + Shift + S | Guarda todos los archivos modificados |
Ctrl + M | Maximiza la ventana activa |
Ctrl + Shift +/- | Manejo de zoom de la ventana (Agranda o achica el font) |
Ctrl + PageDown / PageUp | Avanza / Retrocede un tab en los archivos abiertos dentro del Editor |
Ctrl + Shift + L | Muestra la lista de shortcuts activos |
La detección temprana de errores es una herramienta que va orientando al desarrollador a construir software con mayor robustez. En Wollok este rol lo cumple el validador que está integrado totalmente con el editor.
Detecta construcciones erróneas (constructores en objetos o tests, referencias inválidas, envíos de mensajes incorrectos, entre otros), también chequea el uso o inicialización de variables y constantes como la mayoría de los entornos modernos. Pero Wollok lleva las validaciones a un nivel extra: evita malas prácticas como las construcciones "if (expresion) return true else false", redefinir métodos que solo llamen a super, definir constructores que no inicialicen referencias constantes, definir una estructura de clases con referencias circulares, etc.
Y lo más importante, cada año se incorporan y se revisan esas validaciones de acuerdo a los trabajos prácticos que realizan los estudiantes. Sí, el código escrito retroalimenta al lenguaje.
¿Cómo visualizar la solapa Problemas?
Para activarla, se debe ir al menú Ventana > Mostrar vista > Otras > y buscamos "Problemas". Allí se agrupan los diferentes tipos de problema (error, advertencia, información).
¿Puedo ejecutar un programa con errores o advertencias?
La respuesta es sí: en el caso de las advertencias, se pasan por alto al ejecutar un programa, un test o la consola REPL. En el caso del error, te aparecerá un mensaje de confirmación, ya que el error puede ser que impida la normal ejecución del software que creaste.
Tareas pendientes en el IDE
Si en algún momento escribís código y no quedás del todo conforme, o bien querés avanzar y pensás mejorarlo más adelante, podés generar un recordatorio escribiendo un comentario con las palabras TODO o FIXME. Cuando abras la solapa Tareas (Ventana > Mostrar vista > Otras > buscamos Tareas) tendrás la lista completa de temas pendientes. Haciendo doble click sobre cada elemento te lleva directamente al código.
Para configurar que otras palabras clave aparezcan en la solapa Tasks, activás el menú Ventana > Preferencias > Buscas Códigos de Tarea (Task tags) y agregás o modificás las etiquetas existentes.
Detectar los errores es el primer paso, Wollok permite aplicar soluciones predefinidas a problemas frecuentes. Para activarlo, basta con ubicarse en la parte subrayada en rojo dentro del código y presionar Ctrl + 1, o bien dejar que se active el menú contextual. Entonces se habilita una serie de opciones (quick fixes) que permiten resolver ese conflicto.
Crear una clase, un wko, agregar métodos, referencias (locales, de instancia, parámetros), eliminar construcciones redundantes, corregir llamadas a constructores, son solo alguna de las posibilidades que tenés, que te permiten concentrarte en el diseño y automatizar tareas repetitivas de implementación.
Wollok tiene un formateador basado en su sintaxis que estiliza el código y le da un formato homogéneo, algo necesario en un lenguaje educativo que propone proyectos donde se conforma un grupo de trabajo. Para activarlo, ubicado sobre un archivo, presioná las teclas Ctrl + Shift + F (Format).
Una alternativa a esto es activar la opción para que se formatée automáticamente el archivo al guardar. Para esto debemos ir a Settings > Wollok y habilitar la opción Autoformat the source code on save
Una de las primeras herramientas para trabajar es la consola REPL (nombre que surge del acrónimo Read, Evaluate, Print, Loop), que permite la interacción inicial entre el usuario y el intérprete Wollok.
Si bien tiene algunos alcances limitados (como las opciones de autocompletado), es una forma de comenzar a conocer cómo responden los objetos ante el envío de un mensaje.
Para utilizarla, basta con hacer click derecho sobre un archivo .wlk y elegir la opción "Ejecutar en consola REPL". También te aparecerá el botón "Play" en la barra de herramientas cuando estés en el Explorador de Paquetes.
Podés enviar mensajes a objetos, crear referencias constantes o variables, probar cómo funcionan los números, las fechas y otros objetos que vienen con Wollok, etc. Escribís la línea y al final presionás la tecla Enter. Con la flecha arriba te irán apareciendo los mensajes que enviaste anteriormente. También podés pegar código del portapapeles, y los errores se integran directamente con el editor.
Recordá que cuando modifiques un archivo .wlk, debés reiniciar la consola para que tome los cambios, vas a ver el aviso en la consola o bien en la barra de herramientas arriba a la derecha. Las opciones en ese caso son: reiniciar desde cero tomando los nuevos cambios, o ejecutar automáticamente los mismos comandos que la última sesión.
Exportar una sesión a un test
Podemos exportar una sesión de nuestra consola a un test, mediante el botón específico en la barra de herramientas como se muestra a continuación:
Ejecutar una sesión sin un archivo asociado
También tenés la posibilidad de ejecutar la consola sin necesidad de asociarlo a un archivo particular, mediante una opción específica en la barra:
Importando archivos desde la consola
Wollok es una herramienta de exploración, eso incluye hacer pruebas sobre un archivo de definiciones de un proyecto y luego ir importando otros archivos, como vemos en el ejemplo. Esta opción solo funciona si ejecutás la consola para un archivo .wlk de tu proyecto (no funciona cuando la consola no tiene asociado un archivo), y no podés importar archivos una vez que los modificaste, para eso te recomendamos que utilices los botones de reinicio.
La consola interactiva es útil para dar los primeros pasos, pero cuando necesitamos poder automatizar nuestras pruebas, el Test Runner de Wollok es la herramienta más adecuada para poder validar el software que construimos.
Si querés conocer más acerca del testeo unitario de Wollok te recomendamos que leas este apunte.
Mostrar solo los tests con errores o fallas
Ejecutar todos o algunos tests de un proyecto o directorio
Es posible ejecutar todos los tests de un proyecto, los tests de un directorio o bien diferentes archivos .wtest, como te lo mostramos en este video:
Ejecutar un solo test de un archivo
Es posible ejecutar un solo test dentro de un archivo, escribiendo la palabra "only" antes del test en cuestión. Eso te permitirá concentrarte en ese test e incluso lo podrás integrar con el diagrama dinámico, que se explica en la siguiente solapa.
Diagrama Estático
Wollok trae también herramientas para comunicar el diseño, como el diagrama estático que está totalmente integrado con el editor. A medida que vamos escribiendo el diagrama estático se regenera y se guarda junto con el proyecto. Podemos configurar qué variables, métodos y elementos (WKO, clases, mixins) mostrar.
Para conocer en detalle todas las funcionalidades te recomendamos que leas este apunte.
Diagrama dinámico
Wollok cuenta además con un Diagrama dinámico que se integra con la consola REPL, que permite mostrar las referencias entre los diferentes objetos que están en el ambiente: los candados representan las referencias constantes, el diagrama permite ocultar objetos del diagrama y adaptarse mejor para personas con daltonismo.