acide a c onfigurable i ntegrated d evelopment e nvironment (un entorno integrado de desarrollo...
TRANSCRIPT
04/07/2007
Acide
ACIDEACIDEA C onfigurable
I ntegrated
D evelopment
E nvironment
(Un entorno integrado de desarrollo configurable)
Acide 2
AutoresAutoresIntegrantes del grupo:
◦ Diego Cardiel Freire◦ Juan José Ortiz Sánchez◦ Delfín Rupérez Cañas
Director del proyecto:◦ Fernando Sáenz Pérez
Acide 3
ÍndiceIntroducción
◦¿Para qué sirve?, ¿Cómo funciona?...Descripción
◦Características, léxico, proyectos…Conclusiones
◦Objetivos alcanzados, mejoras…
Acide 4
¿Para qué sirve ACIDE?¿Para qué sirve ACIDE?Edición, compilación y
ejecución/interpretación en diferentes lenguajes de aplicación.
Acide está orientado a los lenguajes de programación.
Para llevarlo a cabo, ACIDE dispone de un analizador léxico y sintáctico configurables.
Puede ser fácilmente configurado para cualquier intérprete, compilador o sistema de base de datos.
Acide 5
¿Cómo funciona ACIDE?¿Cómo funciona ACIDE?Configura de forma parametrizada
la aplicación : menús, idiomas, etc.Gestiona proyectos por medio de
estructuras lógicas (en carpetas y ficheros).
Dispone de opciones diversas de compilación y ejecución.
Edición multi-archivo, coloreado de lenguaje y posibilidad de “parsing on-the-fly”
Acide 6
Objetivos (1)Editor de texto Menús Barra de herramientas Interfaz Gráfica de Usuario (GUI) para
la parametrización Explorador del proyectoNúmeros de líneaBarra de estadoLog Consola
Acide 7
Objetivos (2)Archivos de configuración y
parametrizaciónReconocimiento de las palabras
reservadas Reconocimiento de los errores de sintaxis Creación de proyectos Guardar y cargar configuraciones Intérprete y compilador Ejecución Ayuda
Acide 8
Estado del arteResaltado de palabras:
◦Crimson◦JEdit◦WinEdt
Muy específicos:◦JBuilder◦JCreator◦C++Builder
Configuración compleja:◦Eclipse
Acide 9
VentajasAcide es un entorno configurable
para cualquier tipo de lenguaje de programación.
Independiente de la plataforma al estar implementado en Java.
Válido para lenguajes compilados e interpretados.
Interfaz gráfica amigable e intuitiva.Código abierto.
Acide 10
Características
Editor de texto
Consola
Explorador
Barra de Herramientas
Acide 11
Configuración <EMPTY>
<EMPTY>
<Empty> es una configuración que se inicia al arrancar ACIDE y sirve para proporcionar un entorno de trabajo: Edición,
compilación, ejecución…
Acide 12
Configuración Configuración <EMPTY><EMPTY>Esta aplicación dispone por
defecto de un proyecto llamado: <Empty>.
Se pretende con esto disponer de una serie de configuraciones básicas.
Útil para los que quieran trabajar sin un proyecto específico.
Acide 13
Gestor de proyectos
Acide 14
Gestor de proyectosDispone de las opciones básicas
para la gestión de los proyectos: Nuevo, Abrir, Guardar, “Guardar como” y
Cerrar.
Opciones de compilar y ejecutar.Añadir/Eliminar ficheros y
carpetas.Marcar fichero para compilar.Marcar fichero como Main.
Acide 15
Gestor de proyectosDispone de Menú
Contextual con las opciones básicas del gestor de proyectos
Acide 16
Gestor de proyectos NUEVO PROYECTO
Configuración léxicaConfiguración
gramaticalOpción compiladorOpción intérprete
Acide 17
Gestor de proyectosCompilador
Path del compiladorArgumentosCompilar por cada fichero marcado/ separadorExtensión
Acide 18
Gestor de proyectosEjemplo de compilación:
Acide 19
Gestor de proyectosEjemplo de compilación:
Acide 20
Gestor de proyectosEjemplo de Compilación:
Acide 21
Gestor de proyectos
Acide 22
Gestor de proyectosEjemplo de ejecución
Acide 23
Archivos de idioma (1) Idioma. El idioma de la aplicación es
fácilmente configurable mediante archivos de recursos de texto plano.
Acide 24
Archivos de idioma (2)
Acide 25
Editor de texto (1)Organización de archivos por pestañas.Números de línea.Marcado del estado de los archivos.Vista de distintas partes de un mismo
archivo.Marcado de pares de paréntesis, llaves
y corchetes.Avisos de consistencia de los archivos.Análisis léxico incremental en tiempo
real
Acide 26
Editor de texto (2)
Vista 1
Vista 2Números de línea
Acide 27
Editor de texto (3)
Acide 28
Configuración léxica (1)El usuario podrá definir la lista de
palabras reservadas, símbolos de comentario y delimitadores.
Configuración de cada palabra reservada y delimitador:◦Color.◦Estilo (Cursiva, Negrita).◦Sensible a mayúsculas/minúsculas.
Configuración del color de comentarios de línea.
Acide 29
Configuración léxica (2)
Acide 30
Configuración léxica (3)
Acide 31
Consola (1)Interacción a nivel de hilos con
intérpretes, compiladores o con cualquier tipo de programa que admita un flujo de datos de entrada y de salida.
Visualización de una consola de entrada salida para que el usuario o la propia aplicación pueda interactuar con el programa asociado.
Acide 32
Consola (2)
Acide 33
Consola (3)
Acide 34
Configuración de la barra de herramientas (1)
Acide 35
Configuración de la barra de herramientas (2)
Acide 36
Configuración de menú
Acide 37
Configuración de menú (2)
Acide 38
Configuración de gramáticas (1)
Acide 39
Configuración de gramáticas (2)
Grammar.g
Antlr v2.7.7GrammarLexerTokenTypes.javaGrammarLexer.javaGrammarParser.java JAR
Acide 40
Objetivos (1)Editor de texto Menús Barra de herramientas Interfaz Gráfica de Usuario (GUI) para
la parametrización Explorador del proyectoNúmeros de líneaBarra de estadoLog Consola
Acide 41
Objetivos (2)Archivos de configuración y
parametrizaciónReconocimiento de las palabras
reservadas Reconocimiento de los errores de sintaxis Creación de proyectos Guardar y cargar configuraciones Intérprete y compilador Ejecución Ayuda
Acide 42
Objetivos extraComunicación con programas
externos integrada en el propio entorno (a nivel de hilos)
Configuración en archivos XMLBúsqueda de expresiones
regularesDoble vista del documentoImpresión de documentosPareado de paréntesis, corchetes
y llaves
Acide 43
Posibles ampliaciones futurasSangrado automático del textoDepuradorHistorial de comandos en consolaÚltimos archivos y proyectos
abiertosObtención automática del léxico
a partir de la gramática
Acide 44
Desarrollo Diego Cardiel Freire
◦ Editor de texto◦ Consola◦ Interacción con programas externos◦ Configuración léxica◦ Análisis léxico incremental en tiempo real ◦ Multi-idioma◦ Archivos de recursos
Juan José Ortiz Sánchez◦ Log de la aplicación◦ GUI de configuraciones (prototipos)◦ Configuración de gramáticas◦ Análisis sintáctico◦ Configuración de menú◦ Configuración de barra de herramientas
Delfín Rupérez Cañas◦ Gestor Proyectos◦ Impresión de documentos◦ Deshacer / rehacer◦ Buscar / reemplazar◦ Barra de estado◦ Compilación, ejecución◦ Explorador de proyecto
Acide 45
Página webEjecutable:
◦http://acide.sourceforge.netCódigo fuente:
◦http://pide.berlios.de