Características Especiales
ZinjaI ofrece un gran cantidad de funcionalidades orientadas al proceso de desarrollo, tanto para estudiantes que recién comienzan a programar, como para programadores experimentados que realizan proyectos de dimensiones considerables.
En primer lugar se deben distinguir dos modalidades de trabajo en el entorno: Programas Simples y Proyecto. El primero es el modo en el que se inicia, y se trabaja de esta manera siempre que no se encuentre abierto un proyecto. El modo Programa Simple permite escribir o compilar rápidamente un ejercicio sin necesidad de crear un proyecto, configurar la compilación, o siquiera haber guardado el archivo. En esta modalidad, las opciones de configuración para la compilación y ejecución son mucho más restringidas, y cada archivo abierto se considera un programa diferente. Esta modalidad está pensada para ser utilizada para la resolución de ejercicios o pruebas simples, y permite tener abiertos en un mismo momento más de un ejercicio/programa e ir alternando entre ellos con un solo click. El manejo de Proyectos surge como una forma de dar al usuario mayor potencia y flexibilidad. Los proyectos permiten agrupar un número ilimitado de fuentes y otros archivos, definir múltiples prefiles de configuración y compilación mucho más complejos que en un programa simple, gestiona internamente detalles conecernientes a la portabilidad del mismo, etc.
Además el entorno presenta ayudas para la escritura como autocompletado, ayuda en las llamadas a funciones, comandos de edición específicos para C++, coloreado de sintaxis y plegado de código, múltiples formas de explorar los fuentes, un sistema de ayuda rápida integrado acerca del lenguaje C++, presentación procesada y mejorada de la salida del compilador, un sistema de depuración totalmente funcional, representaciones gráficas de información extraida del código fuente, y muchas otras.
Finalmente, existe un conjunto de funcionalidades adicionales que se logran mediante la utilización de herramientas externas. ZinjaI facilita su uso, automatiza su configuración y las ejecuta convenientemente integrandolas en su propia interfaz. Entre estas herramientas se encuentran doxygen(generación de documentación a partir de comentarios en el código fuente), diff(comparación linea a linea de fuentes y archivos de texto en general) y gprof y gprof2dot (generacion y representación grafica de perfiles de ejecucion).