Vous êtes sur la page 1sur 41

LENGUAJE DE PROGRAMACIÓN 1

LIC. EN PEDAGOGÍA ANA LUISA MANCILLA ZAVALETA


LIC. EN PEDAGOGÍA MARÍA FERNANDA MANJARREZ SUAREZ
LENGUAJE

• Lenguaje es el empleo de notaciones, señales y vocales, para expresar ideas,


comunicarse y establecer relaciones entre seres humanos.
LENGUAJE DE
PROGRAMACIÓN
Conjunto de reglas, notaciones,
símbolos y/o caracteres que
permiten a un programador
poder expresar el procesamiento
de datos y sus estructuras en las
computadoras.
Cada lenguaje posee su sintaxis.
GRUPOS DE LENGUAJE DE
PROGRAMACIÓN
GRUPOS DE LENGUAJE DE PROGRAMACIÓN

• Lenguajes de Bajo Nivel

• Lenguajes de Medio Nivel

• Lenguajes de Alto Nivel


LENGUAJES DE BAJO NIVEL

• Para facilitar y agilizar su labor a los programadores, se buscaron nuevos


lenguajes. Cuando abstraemos los opcodes y los sustituimos por una palabra
que sea una clave de su significado, se tiene el concepto de Lenguaje
Ensamblador. Así, el lenguaje ensamblador representa las acciones del
ordenador mediante pequeñas abreviaturas de palabras en inglés.
EJEMPLOS
• Lenguaje de maquina o Binario
• El lenguaje de máquina ordena a la computadora realizar sus
operaciones fundamentales una por una.

• Ensamblador
• Consiste en asociar a los opciones palabras clave que faciliten su
uso por parte del programador. No obstante, el lenguaje
ensamblador requiere de muchas instrucciones para realizar
simples operaciones.
LENGUAJES DE MEDIO NIVEL

• Se encuentran entre los lenguajes de alto nivel y los lenguajes de bajo nivel.
• Suelen ser clasificados muchas veces de alto nivel, pero permiten ciertos
manejos de bajo nivel. Son precisos para ciertas aplicaciones como la
creación de sistemas operativos, ya que permiten un manejo abstracto
(independiente de la máquina, a diferencia del ensamblador), pero sin
perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel.
EJEMPLOS

•C
• Trata con objetos básicos como caracteres,
números . . . ; también con bits y direcciones
de memoria I Posee una gran portabilidad
LENGUAJES DE ALTO NIVEL

• Se puede escribir un sólo enunciado para realizar tareas sustanciales. Los


lenguajes de alto nivel permiten a los programadores escribir instrucciones
que asemejan al inglés cotidiano y contiene notaciones matemáticas de uso
común.
EJEMPLOS

• FORTRAN
• Propósito general, procedimental e imperativo,
que está especialmente adaptado al cálculo
numérico y a la computación científica

• C++
• Una particularidad del C++ es la posibilidad de
redefinir los operadores, y de poder crear
nuevos tipos que se comporten como tipos
fundamentales.
GENERACIONES DE LENGUAJE DE
PROGRAMACIÓN
LENGUAJES DE TERCERA GENERACIÓN

• Los lenguajes de alto nivel sustituyen las instrucciones simbólicas por códigos
independientes de la máquina, parecidas al lenguaje humano o al de
las Matemáticas.
EJEMPLOS DE LENGUAJES DE TERCERA
GENERACIÓN
• Cobol
• Pascal
• Fortran
• C++
• Java
LENGUAJES DE CUARTA GENERACIÓN

• Se ha dado este nombre a ciertas herramientas que permiten construir


aplicaciones sencillas combinando piezas prefabricadas. Hoy se piensa que
estas herramientas no son, propiamente hablando, lenguajes. Algunos
proponen reservar el nombre de cuarta generación para la programación
orientada a objetos.
EJEMPLOS DE LENGUAJES DE CUARTA
GENERACIÓN

• Natural
• PL-SQL
• SQL
• QBE
PARADIGMAS DE LA
PROGRAMACIÓN
PARADIGMAS DE LA PROGRAMACIÓN

• Cada paradigma de programación es implementado a través de diversos


lenguajes.
• Existen cuatro modelos básicos de computación que describen casi todos los
lenguajes de programación actuales:
• Imperativo
• Aplicativo
• Lenguaje con base en reglas
• Orientado a objetos
LENGUAJE DE PROGRAMACIÓN IMPERATIVO

• Son lenguajes controlados por mandatos u orientados a enunciados


(instrucciones). Un programa se compone de una serie de enunciados, y la
ejecución de cada enunciado hace que el intérprete cambie el valor de una
localidad o más en su memoria, es decir que pase a un nuevo estado.
LENGUAJE DE PROGRAMACIÓN APLICATIVO

• Un punto de vista alternativo de la computación representado por un


lenguaje de programación consiste en examinar la función que el programa
representa y no sólo los cambios de estado conforme el programa se ejecuta,
enunciado por enunciado.
LENGUAJE DE PROGRAMACIÓN ORIENTADA A
OBJETOS
• En este tipo de lenguaje, se construyen objetos complejos de datos y luego
designa un conjunto limitado de funciones para que operen con esos datos.
Los objetos complejos se designan como extensiones de objetos más simples y
heredan propiedades del objeto más sencillo.
EJEMPLOS

• Visual Basic
• Ruby
• Java
DEFINICIÓN DE UN LENGUAJE DE
PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓN

• Un lenguaje de programación como lo definimos anteriormente es como un conjunto


de reglas, símbolos y palabras especiales que permiten construir un programa.
• Un lenguaje de programación es un lenguaje especial, no natural, diseñado con un
vocabulario, morfología y sintaxis muy simples y rígidas y orientado a la
programación de instrucciones elementales cuya ejecución por un determinado
sistema físico da a lugar a la realización de una tarea.
• Sintaxis
• Semántica
• Gramática
SINTAXIS

• Es el conjunto de reglas que gobiernan la construcción o formación de


sentencias (instrucciones) validas en un lenguaje. La sintaxis de un lenguaje de
programación es el aspecto que ofrece el programa.
SEMÁNTICA

• Conjunto de reglas que proporcionan el significado de una sentencia o


instrucción del lenguaje. La semántica de un lenguaje de programación es el
significado que se da a las diversas construcciones sintácticas.
GRAMÁTICA
• La definición formal de la sintaxis de un lenguaje de programación se conoce
ordinariamente como una gramática, en analogía con la terminología común
para los lenguajes naturales.
• Una gramática se compone de un conjunto de reglas (producciones) que
especifican los caracteres (o elementos léxicos) que forman programas
permisibles en el lenguaje que se están definiendo.
TRANSLACIÓN DE LENGUAJES DE
PROGRAMACIÓN
TRANSLACIÓN DE LENGUAJES DE PROGRAMACIÓN

• El proceso de traducción de un programa, de su sintaxis original a una forma


ejecutable medular en toda implementación de lenguajes de programación.
• Compilación
• Análisis léxico
• Análisis sintáctico
• Análisis semántico
• Tabla de símbolos
COMPILACIÓN
• Los traductores se agrupan de acuerdo con el número de pasos que efectúan
sobre el programa fuente.
• El compilador estándar emplea típicamente dos pasos sobre el programa
fuente.
• Análisis: descompone el programa en componentes que lo constituyen y obtiene
información.
• Generación de un programa objeto a partir de la información recolectada.
ANÁLISIS LÉXICO

• Fase fundamental en el proceso de


cualquier traducción, es agrupar esta
serie de caracteres en sus
constituyentes elementales;
identificadores, delimitadores,
símbolos, etc.
ANÁLISIS SINTÁCTICO

• Segunda etapa del análisis sintáctico.


• En ella se identifican las estructuras de
programas más grandes (enunciados
declaraciones, expresiones, etc.)
usando los elementos léxicos
producidos por el analizador léxico.
ANÁLISIS SEMÁNTICO

• Es la fase medular de la traducción.


• Aquí se procesan las estructuras sintácticas reconocidas por el analizador
sintáctico y la estructura del código objeto ejecutable comienza a tomar
forma.
TABLA DE SÍMBOLOS

• El analizador semántico divide ordinariamente en un conjunto de


analizadores semánticos más pequeños, cada uno de los cuales maneja un
tipo particular de construcción de programa.
EVOLUCIÓN DE LOS DISTINTOS
LENGUAJES DE PROGRAMACIÓN
FORTRAN
• FORTRAN es el más viejo de los lenguajes de alto nivel. Fue diseñado por IBM en 1950. El
idioma se hizo tan popular en los 60´s que otros desarrolladores empezaron a producir sus
propias versiones y esto llevó a una gran cantidad de dialectos (en 1963 había 40
compiladores de FORTRAN diferentes). En 1972 se creó FORTRAN66, como una forma de
estandarizar la estructura del lenguaje.
• Luego, en 1980, se estableció una norma oficial para el lenguaje avalada por la
Organización de Normas Internacionales (ISO). Tal versión es normalmente conocida como
FORTRAN 77 (dado que el proyecto final se completó en 1977).
• En 1991 surge FORTRAN90, un desarrollo mayor del idioma pero que incluye todos los
elementos de FORTRAN77 para facilitar la compatibilidad. Finalmente, en 1997, surge
FORTRAN95 o High Performance Fortran (HPF).
BASIC
• BASIC es la abreviación de Beginners All-purpose Symbolic Instruction Code. Basic fue desarrollado
en la Universidad de Dartmouth en 1964 bajo la dirección de J. Kemeny y T. Kurtz. Surgió como
un idioma simple de aprender y fácil de traducir. En los 70´s, cuando se creó la computadora
personal Altair, Bill Gates y Paul Allen implementaron su propia versión de Basic en dicha
computadora.
• Con ello comenzó el futuro de BASIC y de la PC. En ese tiempo, Gates era estudiante de Harvard
y Allen era un empleado de Honeywell. La versión BASIC de Gates ocupaba un total de 4KB de
memoria incluyendo el código y los datos que se usaron para el código fuente. Luego Gates
implementó BASIC en otras plataformas (Apple, Comodor y Atari) y fue a partir de entonces que
la corporación de Microsoft empezó su reinado en el mundo de las PC. Más tarde en los 70’s,
surgió el sistema operativo MS-DOS de Bill Gates que incluía un intérprete de BASIC. La versión
distribuida con MS-DOS era GW-BASIC y podía ser ejecutada en cualquier máquina que pudiera
ejecutar DOS.
C
• El lenguaje C reúne características de programación tanto de los lenguajes ensambladores como de
los lenguajes de alto nivel; este lenguaje posee gran poderío basado en sus operaciones a nivel de
bits (propias de ensambladores) y la mayoría de los elementos de la programación estructurada de
los lenguajes de alto nivel. Por ello es que C ha sido el lenguaje preferido para el desarrollo de
software de sistemas y aplicaciones profesionales de la programación de computadoras.
• En 1970 Ken Thompson de los laboratorios Bell creó la primera versión del lenguaje, la cual podía
ejecutarse en el sistema operativo UNIX; a este lenguaje se le llamó lenguaje B y tenía la desventaja
de ser lento. En 1971 Dennis Ritchie, con base en el lenguaje B, desarrolló NB que luego cambió su
nombre por C. Su diseño incluyó una sintaxis simplificada, la aritmética de direcciones de memoria
(permite al programador manipular bits, bytes y direcciones de memoria) y el concepto de
apuntador. Además, al ser diseñado para mejorar software de sistemas, se buscó que generase
códigos eficientes y uno portabilidad total, es decir el que pudiese correr en cualquier máquina.
• Logrados los objetivos anteriores, C se convirtió en el lenguaje preferido de los programadores
profesionales.
C++

• En 1980 Bjarne Stroustrup, también de los laboratorios Bell, adicionó al


lenguaje C las características de la programación orientada a objetos
(incluyendo la ventaja de una biblioteca de funciones orientada a objetos) y
lo denominó C con clases. Para 1983 dicha denominación cambió a la de
C++.
GRACIAS POR SU ATENCIÓN