Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 4

Instituto Tecnológico de Mexicali

Ingeniería en Sistemas Computacionales

Reporte de práctica
JFLEX
LENGUAJES Y AUTÓMATAS I.

Jordan Rivera Rodriguez


19490954

Mexicali, Baja California, 2023-10-18


Objetivo:
El objetivo de esta práctica es instalar y configurar el entorno de
desarrollo integrado (IDE) NetBeans, instalar la librería JFlex para el
análisis léxico en aplicaciones Java, y desarrollar un ejercicio práctico
que incluye la creación de un analizador léxico sencillo y una interfaz de
usuario.

Procedimiento:

Instalación de NetBeans:

● Se descargó la última versión del IDE NetBeans del sitio web oficial.
● Se procedió con la instalación estándar siguiendo el asistente de
instalación, seleccionando los componentes necesarios para proyectos
Java.

Instalación de la librería JFlex:

● Se descargó la librería JFlex desde su página oficial.


● Se agregó la librería al proyecto en NetBeans: en las propiedades del
proyecto, en la categoría "Bibliotecas", se utilizó el botón "Agregar
JAR/Carpeta..." para incluir el archivo JAR de JFlex.

Creación del ejercicio práctico:

● Se inició un nuevo proyecto en NetBeans y se creó un paquete llamado


'codigo'.
● Dentro del paquete, se configuró un archivo de especificaciones de
JFlex con la siguiente estructura:

Mexicali, Baja California, 2023-10-18


package codigo;
import static codigo.Tokens.*;
%%
%class Lexer
%type Tokens
L=[a-zA-Z_]+
D=[0-9]+
espacio=[ ,\t,\r,\n]+
%{
public String lexeme;
%}
%%
int |
if |
else |
while {lexeme=yytext(); return Reservadas;}
{espacio} {/*Ignore*/}
"//".* {/*Ignore*/}
"=" {return Igual;}
"+" {return Suma;}
"-" {return Resta;}
"*" {return Multiplicacion;}
"/" {return Division;}
{L}({L}|{D})* {lexeme=yytext(); return Identificador;}
("(-"{D}+")")|{D}+ {lexeme=yytext(); return Numero;}
. {return ERROR;}

Este código define un analizador léxico simple con tokens para identificar
palabras reservadas, identificadores, números y algunos operadores,
utilizando expresiones regulares para definir las reglas de coincidencia.

Creación de una interfaz sencilla:


● Se utilizó el diseñador de GUI de NetBeans para crear una interfaz de
usuario sencilla que incluye áreas de texto para ingresar código
fuente y mostrar resultados, y un botón para iniciar el análisis
léxico.
● Se implementó la lógica necesaria en el controlador de eventos del
botón para realizar el análisis léxico del texto ingresado utilizando
la clase 'Lexer' generada por JFlex y mostrar los tokens resultantes.

Mexicali, Baja California, 2023-10-18


Resultados:
● La instalación de NetBeans y JFlex fue exitosa, permitiendo el
desarrollo del ejercicio práctico propuesto.
● El analizador léxico fue capaz de identificar correctamente los
tokens en el texto de entrada según las reglas definidas en el
archivo de especificaciones de JFlex.
● La interfaz de usuario funcionó como se esperaba, proporcionando una
forma interactiva de demostrar la funcionalidad del analizador
léxico.

Conclusiones:
● La práctica permitió familiarizarse con el proceso de instalación y
configuración de herramientas esenciales para el desarrollo en Java,
como NetBeans y JFlex.
● El ejercicio práctico ayudó a entender cómo se utilizan las
expresiones regulares y los analizadores léxicos en la creación de
compiladores e intérpretes, y cómo se pueden integrar estas
herramientas en aplicaciones con interfaz gráfica.
● Se concluye la importancia de conocer y manejar estas herramientas y
conceptos, ya que son fundamentales en áreas como el desarrollo de
lenguajes de programación, compiladores y software que requiere
procesamiento de lenguaje natural.

Mexicali, Baja California, 2023-10-18

También podría gustarte