SlideShare una empresa de Scribd logo
1 de 14
Una prioridad de este programa es poder separar el
lenguaje HTML del lenguaje propio de las hojas de
estilo.



                     La idea que se encuentra detrás del
                     desarrollo de CSS es separar la
                     estructura de un documento de
                     su presentación.




   Hojas de estilo css es un lenguaje usado para
   definir la presentación de un documento
   estructurado escrito en HTML .
• Mejorar el Analizador Léxico.
• Implementar Analizador Sintáctico.
• Lograr que el análisis de las css sea
lo más correcta posible.
• Implementar una interfaz gráfica amigable
y manejable para el usuario.
• Que la conjunción de los dos analizadores a la
 hora de su ejecución sea lo mas rápido que
sea posible.
El proyecto que nosotros decidimos realizar fue un compilador de hojas de estilo
“.css”, ya que estábamos en proceso de la realización de este, pero por falta de
tiempo solo desarrollamos la parte del analizador léxico aun contando
con muchas fallas y su ejecución no cuenta aún con una interfaz gráfica.

Lo que nosotros nos planteamos al escoger este proyecto es buscar la
implementación de un analizador léxico que funcione de manera correcta,
un analizador sintáctico que funcione de manera eficaz y rápida, para que así
nuestro Proyecto presente un gran avance en la busca de la creación de un
compilador.
¿Qué es un compilador
(traductor)?

Programa que lee un programa
(fuente) en un lenguaje ascci y lo
traduce a un programa
EQUIVALENTE en otro lenguaje
(objeto)
Además:
    da mensajes de error
    lleva a cabo determinadas
    “correcciones” (recuperación
    de errores)
    puede optimizar el código
    generado
Desarrollar un software que sirva como
herramienta para el análisis de hojas de
estilo y de esta manera prevenir fallas en
la creación de las mismas


                           •Permite al usuario buscar el archivo que se
                           desea compilar.
                           •Permite la interacción de manera
                           entendible
                           •Marcará si contiene un error de sintáctico o
                           léxico.
                           •Marcará los errores que contenga mediante
                           el número de línea.
El proceso de traducción se compone
                           internamente de varias etapas o fases, que
                           realizan distintas operaciones lógicas



Análisis Léxico




                  Análisis Sintáctico
Un analizador sintáctico es una de las partes de
un compilador que transforma su entrada en un
árbol de derivación.
Un analizador léxico crea tokens de una
secuencia de caracteres de entrada y son estos
tokens los que son procesados por el analizador
sintáctico para construir la estructura de datos.
AUTOMATA:ES UNA MAQUINA DE ESTADOS.




    MATRIZ DE TRANSICION:
    Se genera a través de un .autómata y sirve para verificar
    el camino del alguna sentencia que se dese examinar.
La gramática LL(1), es la encargada de hacer funcionar el analizar sintáctico
Su funcionamiento se basa en ver el siguiente token para hacer el análisis de
sus decisiones.
El manejo de errores es una de las
misiones más importantes de un
compilador


A veces unos errores ocultan otros

A veces un error provoca una avalancha
de muchos errores que se solucionan con
el primero
Mejoras dentro de la implementación del
                            programa

                            Creación de un archivo, el cual contiene
                            las palabras reservadas de las hojas de
                            estilo CSS.




Creación de la función pre-análisis con la
cual la verificación de la frases
gramaticales es mucho más rápida y
precisa
Resultado final

Más contenido relacionado

La actualidad más candente

Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iRossana Sosa
 
Introducción a Compiladores
Introducción a  CompiladoresIntroducción a  Compiladores
Introducción a CompiladoresLeopoldo Capa
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppInfomania pro
 
PROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADAPROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADATeDy j Sanchez
 
Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1udalrico
 
Java gabriela miralda
Java gabriela miraldaJava gabriela miralda
Java gabriela miraldaGabrielaM05
 
Clase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini devClase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini devInfomania pro
 
El otro TDD: Type Driven Development
El otro TDD: Type Driven DevelopmentEl otro TDD: Type Driven Development
El otro TDD: Type Driven DevelopmentQuito Lambda
 
Java janner
Java   jannerJava   janner
Java jannersena
 
Introducción a JAVA.
Introducción a JAVA.Introducción a JAVA.
Introducción a JAVA.guestdf1874
 
Ingenieria de Software
Ingenieria de SoftwareIngenieria de Software
Ingenieria de SoftwareAbrilzabaleta
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladoresbachispasaca
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS Infomania pro
 

La actualidad más candente (20)

Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes i
 
Introducción a Compiladores
Introducción a  CompiladoresIntroducción a  Compiladores
Introducción a Compiladores
 
Api
ApiApi
Api
 
Unidad1 2 Lenguajes y automatas
Unidad1 2  Lenguajes y automatasUnidad1 2  Lenguajes y automatas
Unidad1 2 Lenguajes y automatas
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cpp
 
PROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADAPROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADA
 
Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Compiladores
CompiladoresCompiladores
Compiladores
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
Java gabriela miralda
Java gabriela miraldaJava gabriela miralda
Java gabriela miralda
 
Clase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini devClase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini dev
 
El otro TDD: Type Driven Development
El otro TDD: Type Driven DevelopmentEl otro TDD: Type Driven Development
El otro TDD: Type Driven Development
 
Prolog
PrologProlog
Prolog
 
Prolog2
Prolog2Prolog2
Prolog2
 
Java janner
Java   jannerJava   janner
Java janner
 
Introducción a JAVA.
Introducción a JAVA.Introducción a JAVA.
Introducción a JAVA.
 
Ingenieria de Software
Ingenieria de SoftwareIngenieria de Software
Ingenieria de Software
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladores
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 

Destacado

TEMPIC-45 Práctica I. Control de un LED
TEMPIC-45 Práctica I. Control de un LEDTEMPIC-45 Práctica I. Control de un LED
TEMPIC-45 Práctica I. Control de un LEDiihhhii
 
Teclado matricial
Teclado matricialTeclado matricial
Teclado matricialJair BG
 
Manejo de teclado 4x4 con pic 16 f84a
Manejo de teclado 4x4 con pic 16 f84aManejo de teclado 4x4 con pic 16 f84a
Manejo de teclado 4x4 con pic 16 f84axeleta
 
Práctica III. Mostrar un mensaje en una pantalla LCD
Práctica III. Mostrar un mensaje en una pantalla LCDPráctica III. Mostrar un mensaje en una pantalla LCD
Práctica III. Mostrar un mensaje en una pantalla LCDiihhhii
 
Ejercicios 06 subrutinas con LCD
Ejercicios 06 subrutinas con LCDEjercicios 06 subrutinas con LCD
Ejercicios 06 subrutinas con LCDJaime E. Velarde
 

Destacado (8)

Ordinario inovacion
Ordinario inovacionOrdinario inovacion
Ordinario inovacion
 
Ccs c compiler v4
Ccs c compiler v4Ccs c compiler v4
Ccs c compiler v4
 
1. microcontrolador
1. microcontrolador1. microcontrolador
1. microcontrolador
 
TEMPIC-45 Práctica I. Control de un LED
TEMPIC-45 Práctica I. Control de un LEDTEMPIC-45 Práctica I. Control de un LED
TEMPIC-45 Práctica I. Control de un LED
 
Teclado matricial
Teclado matricialTeclado matricial
Teclado matricial
 
Manejo de teclado 4x4 con pic 16 f84a
Manejo de teclado 4x4 con pic 16 f84aManejo de teclado 4x4 con pic 16 f84a
Manejo de teclado 4x4 con pic 16 f84a
 
Práctica III. Mostrar un mensaje en una pantalla LCD
Práctica III. Mostrar un mensaje en una pantalla LCDPráctica III. Mostrar un mensaje en una pantalla LCD
Práctica III. Mostrar un mensaje en una pantalla LCD
 
Ejercicios 06 subrutinas con LCD
Ejercicios 06 subrutinas con LCDEjercicios 06 subrutinas con LCD
Ejercicios 06 subrutinas con LCD
 

Similar a Separar estructura y presentación CSS

Similar a Separar estructura y presentación CSS (20)

Compiladores unidad1
Compiladores unidad1Compiladores unidad1
Compiladores unidad1
 
investigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdfinvestigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdf
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Tarea3
Tarea3 Tarea3
Tarea3
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Visual Basic
Visual BasicVisual Basic
Visual Basic
 
lexico.pptx
lexico.pptxlexico.pptx
lexico.pptx
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Herramientas case[procesamiento de lenguaje analisis de p
Herramientas case[procesamiento de lenguaje   analisis de pHerramientas case[procesamiento de lenguaje   analisis de p
Herramientas case[procesamiento de lenguaje analisis de p
 
Lenguajes de bases de datos
Lenguajes  de bases de datos Lenguajes  de bases de datos
Lenguajes de bases de datos
 
TALLER ANALISIS LEXICO
TALLER ANALISIS LEXICOTALLER ANALISIS LEXICO
TALLER ANALISIS LEXICO
 
Taller análisis sintáctico
Taller análisis sintácticoTaller análisis sintáctico
Taller análisis sintáctico
 
Resumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamachoResumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamacho
 
Herramientas de software
Herramientas de softwareHerramientas de software
Herramientas de software
 
Programación!! . .
Programación!! . .Programación!! . .
Programación!! . .
 
diaposichap.pptx
diaposichap.pptxdiaposichap.pptx
diaposichap.pptx
 
Programaciòn
ProgramaciònProgramaciòn
Programaciòn
 
Ensamblador y enlazador
Ensamblador y enlazadorEnsamblador y enlazador
Ensamblador y enlazador
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semantico
 

Separar estructura y presentación CSS

  • 1.
  • 2. Una prioridad de este programa es poder separar el lenguaje HTML del lenguaje propio de las hojas de estilo. La idea que se encuentra detrás del desarrollo de CSS es separar la estructura de un documento de su presentación. Hojas de estilo css es un lenguaje usado para definir la presentación de un documento estructurado escrito en HTML .
  • 3. • Mejorar el Analizador Léxico. • Implementar Analizador Sintáctico. • Lograr que el análisis de las css sea lo más correcta posible. • Implementar una interfaz gráfica amigable y manejable para el usuario. • Que la conjunción de los dos analizadores a la hora de su ejecución sea lo mas rápido que sea posible.
  • 4. El proyecto que nosotros decidimos realizar fue un compilador de hojas de estilo “.css”, ya que estábamos en proceso de la realización de este, pero por falta de tiempo solo desarrollamos la parte del analizador léxico aun contando con muchas fallas y su ejecución no cuenta aún con una interfaz gráfica. Lo que nosotros nos planteamos al escoger este proyecto es buscar la implementación de un analizador léxico que funcione de manera correcta, un analizador sintáctico que funcione de manera eficaz y rápida, para que así nuestro Proyecto presente un gran avance en la busca de la creación de un compilador.
  • 5.
  • 6. ¿Qué es un compilador (traductor)? Programa que lee un programa (fuente) en un lenguaje ascci y lo traduce a un programa EQUIVALENTE en otro lenguaje (objeto) Además: da mensajes de error lleva a cabo determinadas “correcciones” (recuperación de errores) puede optimizar el código generado
  • 7. Desarrollar un software que sirva como herramienta para el análisis de hojas de estilo y de esta manera prevenir fallas en la creación de las mismas •Permite al usuario buscar el archivo que se desea compilar. •Permite la interacción de manera entendible •Marcará si contiene un error de sintáctico o léxico. •Marcará los errores que contenga mediante el número de línea.
  • 8. El proceso de traducción se compone internamente de varias etapas o fases, que realizan distintas operaciones lógicas Análisis Léxico Análisis Sintáctico
  • 9. Un analizador sintáctico es una de las partes de un compilador que transforma su entrada en un árbol de derivación. Un analizador léxico crea tokens de una secuencia de caracteres de entrada y son estos tokens los que son procesados por el analizador sintáctico para construir la estructura de datos.
  • 10. AUTOMATA:ES UNA MAQUINA DE ESTADOS. MATRIZ DE TRANSICION: Se genera a través de un .autómata y sirve para verificar el camino del alguna sentencia que se dese examinar.
  • 11. La gramática LL(1), es la encargada de hacer funcionar el analizar sintáctico Su funcionamiento se basa en ver el siguiente token para hacer el análisis de sus decisiones.
  • 12. El manejo de errores es una de las misiones más importantes de un compilador A veces unos errores ocultan otros A veces un error provoca una avalancha de muchos errores que se solucionan con el primero
  • 13. Mejoras dentro de la implementación del programa Creación de un archivo, el cual contiene las palabras reservadas de las hojas de estilo CSS. Creación de la función pre-análisis con la cual la verificación de la frases gramaticales es mucho más rápida y precisa