2. CASE-Procesamiento de Lenguajes Compilador Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser simplemente texto. Este proceso de traducción se conoce como compilación.
3. CASE-Procesamiento de Lenguajes Partes de un Compilador Análisis: Se trata de la comprobación de la corrección del programa fuente, e incluye las fases correspondientes al Análisis Léxico (que consiste en la descomposición del programa fuente en componentes léxicos), Análisis Sintáctico (agrupación de los componentes léxicos en frases gramaticales) y Análisis Semántico (comprobación de la validez semántica de las sentencias aceptadas en la fase de Análisis Sintáctico). Síntesis: Su objetivo es la generación de la salida expresada en el lenguaje objeto y suele estar formado por una o varias combinaciones de fases de Generación de Código (normalmente se trata de código intermedio o de código objeto) y de Optimización de Código (en las que se busca obtener un código lo más eficiente posible).
4. CASE-Procesamiento de Lenguajes Front-end: es la parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Esta parte suele ser independiente de la plataforma o sistema para el cual se vaya a compilar, y está compuesta por las fases comprendidas entre el Análisis Léxico y la Generación de Código Intermedio. Back-end: es la parte que genera el código máquina, específico de una plataforma, a partir de los resultados de la fase de análisis, realizada por el Front End.
5. CASE-Procesamiento de Lenguajes GCC GNU CompilerCollection (colección de compiladores GNU) es un conjunto de compiladores creados por el proyecto GNU. GCC es software libre y lo distribuye la FSF bajo la licencia GPL. Estos compiladores se consideran estándar para los sistemas operativos derivados de UNIX, de código abierto o también de propietarios, como Mac OS X. GCC requiere el conjunto de aplicaciones conocido como binutils para realizar tareas como identificar archivos objeto u obtener su tamaño para copiarlos, traducirlos o crear listas, enlazarlos, o quitarles Símbolos innecesarios.
6. CASE-Procesamiento de Lenguajes Objetivo GCC es parte del proyecto GNU, el cual tiene como objetivo mejorar el compilador usado en los sistemas GNU incluyendo la variante GNU/Linux. El desarrollo de GCC usa un entorno de desarrollo abierto y soporta muchas otras plataformas con el fin de fomentar el uso de un compilador-optimizador de clase global, para atraer muchos equipos de desarrollo, para asegurar que GCC y los sistemas GNU funcionen en diferentes arquitecturas y diferentes entornos, y más aún, para extender y mejorar las características de GCC.
7. CASE-Procesamiento de Lenguajes Lenguajes En la versión 4.2.3 (liberada el 1 de febrero de 2008), se incluyen frontends para: Ada (GNAT) ANSI C (GCC) C++ (G++) Fortran (GFortran) Java (Gcj) Objective-C Objective-C++
8. CASE-Procesamiento de Lenguajes Java Virtual Machine (JVM) La máquina virtual de Java o JVM, es un ordenador abstracto que se ejecuta compilado programas Java. La JVM es "virtual", ya que es generalmente aplicado en el software en la parte superior de una "plataforma de hardware real y el sistema operativo. Todos los programas Java son compilados para la JVM. Por lo tanto, la JVM debe aplicarse sobre una plataforma en particular antes compilado programas Java se ejecutan en esta plataforma.
9. CASE-Procesamiento de Lenguajes Java bytecodes Los programas Java se compilan en un formulario llamado bytecode de Java. La JVM ejecuta bytecodesJava, así que bytecodes Java puede ser considerado como el lenguaje de máquina de la JVM. El compilador de Java lee el idioma fuente de Java (. Java) archivos, traduce el código fuente en bytecodesJava, y los lugares en los bytecodes de la clase (. Clase) archivos. El compilador genera un archivo de clase por clase en la fuente.
10. CASE-Procesamiento de Lenguajes Buildbot El buildbot es un sistema para automatizar la compilación, ciclo de prueba requerido por los proyectos de la mayoría del software para validar cambios de código. Se identifica problemas de compilación con rapidez, antes de que otros desarrolladores sean incomodados por el fracaso. Ejecutándolo se basa en una variedad de plataformas, los desarrolladores que no tienen las facilidades para probar los cambios antes del chequeo en todas partes por lo menos saben poco después si han roto el código construido o no. El tamaño de imagen, tiempo de compilación, construcción y otros parámetros pueden ser seguidos a través del tiempo, son más visibles, y por lo tanto más fácil de mejorar.
11. CASE-Análisis de Programas Analizador estático de código Es posible que la definición más breve y concisa de la técnica que vamos a utilizar sea la siguiente: "El análisis estático del código es el proceso de evaluar el software sin ejecutarlo” Es, por tanto, una técnica que se aplica directamente sobre el código fuente tal cual, sin transformaciones previas ni cambios de ningún tipo. La idea es que, en base a ese código fuente, podamos obtener información que nos permita mejorar la base de código manteniendo la semántica original.
12. CASE-Análisis de Programas Checkstyle Checkstyle es una herramienta de desarrollo para ayudar a los programadores escribir código Java que se adhiere a un estándar de codificación. Automatiza el proceso de chequeo de código Java a los seres humanos evitando que este sea aburrido. Esto lo hace ideal para proyectos que desea aplicar un estándar de codificación. Checkstyle es altamente configurable y se puede hacer para apoyar casi cualquier estándar de codificación. Un archivo de configuración de ejemplo se proporciona apoyo a las Convenciones de Código dom. Además, otros archivos de configuración de ejemplo son suministrados por otros conocidos y convenciones.
13. CASE-Análisis de Programas Javadoc Javadoc es una utilidad de Sun Microsystems para la generación de documentación de APIs en formato HTML a partir de código fuente Java. Javadoc es el estándar de la industria para documentar clases de Java. La mayoría de los IDEs los generan automáticamente. Javadoc también proporciona una API para crear docletsy taglets, que le permite analizar la estructura de una aplicación Java. Así es como JDiff puede generar informes de lo que ha cambiado entre dos versiones de una API.
14. CASE-Análisis de Programas Etiquetas Javadoc Para generar APIs con Javadoc han de usarse etiquetas (tag's) de HTML o ciertas palabras reservadas precedidas por el caracter "@".
15.
16. CASE-Análisis de Programas PHPXref PHPXref es una herramienta de desarrollo que está diseñado para facilitar el proceso de trabajar en grandes proyectos de PHP por lo que es muy rápido y fácil de navegar por la documentación de código junto con el propio código. Funciona mediante el escaneo de un directorio del proyecto y la traducción de los archivos que encuentre en lectura con referencias cruzadas HTML, simultáneamente y utilizando comentarios en el código de presentar la documentación que lo acompañe.
17. CASE-Análisis de Programas Características Requisitos mínimos, una configuración mínima. No hay ningún servidor web para ver la salida. Extractos documentación phpdoc estilo de archivos de código fuente. Salida Javascript mejorado proporciona: Información sobre las clases y funciones en la vista de origen. Hot-ir a la fuente de cualquier clase / definición de la función. Búsqueda instantánea de las clases, funciones, constantes y tablas por su nombre. Buscar el historial de búsqueda. Imprime archivos PHP desde el navegador.