Ingeniería en Computación Lenguajes de Programación

Slides:



Advertisements
Presentaciones similares
Introducción a la programación en C
Advertisements

SISTEMAS DE PROCESAMIENTO DE LA INFORMACION HISTORIA Y EVOLUCIÓN DEL SOFTWARE.
Museo Tecnológico. Bienvenidos al Museo Tecnológico BIENVENIDOS Información.
Prof. Mauro Zaravia Ortiz Características: Construidas por medio de base de tubos de vacío.tubos de vacío Eran programadas en lenguaje de máquina (porque.
Conocimientos Básicos de Computación Programación de Computadores.
MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN.
¡QUE ES El Software? ORIGEN DEL SOFTWARE El software como se ha visto, no surge con los equipos electrónicos, -aunque es con ellos que adopta el nombre-
1 LENGUAJES DE PROGRAMACIÓN. Son aplicaciones específicas diseñadas para crear otras aplicaciones o programas. Son programas para crear programas. 2.
Tema 1 Fundamentos de Computación
Herencia Multiple en Java
El BASIC es un lenguaje de programación que se creo con fines pedagógicos, era el lenguaje que utilizan las microcomputadoras de los años 80. Actualmente.
Universidad American College. Objetivos Introducción a la Informática Tema: Introducción a la Informática 1.Explicar los conceptos fundamentales relacionados.
LENGUAJES DE PROGRAMACIÓN
Introducción – Conceptos Lenguajes de Programación Introducción
Historia de los Lenguajes de Programación.
PROGRAMACIÓN (1).
Evolución de paradigmas y lenguajes de Programación
INSTITUTO NACIONAL DE SAN ISIDRO (INSI) MUNICIPIO DE SAN ISIDRO, DEPARTAMENTO DE MORAZÁN. ASIGNATURA: INFORMATICA. TEMA: LA QUINTA GENERACION DE LAS COMPUTADORAS.
LENGUAJE DE PROGRAMACIÓN Y SOFTWARE PROPIETARIO
LENGUAJES Y REPRESENTACION TECNICA
PROGRAMACION ESTRUCTURADA.
ALGORITMOS, LENGUAJES Y TECNICAS DE PROGRAMACION
EQUIPO No 3.
Oscar Martin Tirado Ochoa
Lenguaje de programación C++
UNIVERSIDAD PEDAGÓGICA NACIONAL FRANCISCO MORAZÁN
LENGUAJE DE PROGRAMACIÓN
Tecnología de la Información Software
Lenguaje y representación técnica
Tecnología de la Información Profesora Ariana Rosenthal Software
Realizar una presentación en power point con 10 diapositivas sobre una línea de tiempo de las generaciones de las computadoras.
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
Unidad 1. Conceptos básicos
Tema 1 Introducción a la Informática
LENGUAJES Y REPRESENTACION TECNICA
INTRODUCCIÓN A JAVA.
TAREA DEFINICIONES: Software: Equipamiento lógico o soporte lógico de una computadora digital; comprende el conjunto de los componentes lógicos necesarios.
Conocer los fundamentos de la programación estructurada
Lenguajes de Programación
PROGRAMACIÓN 1 INTRODUCCIÓN
CONCEPTOS PRELIMINARES (Cont)
INTRODUCCIÓN ING. IVONNE MALDONADO. PROGRAMACIÓN Programar no es mas que idear y ordenar las acciones. Lograr que un programa cumpla con una cierta tarea.
Introducción al lenguaje de programación. Introducción  Los lenguajes de programación son aplicaciones específicas que han sido pensadas y diseñadas.
EL SISTEMA OPERATIVO Es un conjunto de programas hechos para la ejecución de varias tareas, en las que sirve de intermediario entre el usuario y la computadora.
Tema 1 Introducción a las Ciencias de la Computación
Secretaria de Educación Pública TECNOLÓGICO NACIONAL DE MÉXICO
Fundamentos de programación
ESTRUCTURA DE LOS COMPUTADORES
UNIVERSIDAD DEL VALLE Docente: MsC. Cinthya Irene Rosales Martinez Facultad de Ingeniería Lenguajes de Programación.
Programación Orientada a Objetos. ¿Qué es un ordenador? “Un sistema digital con tecnología microelectrónica capaz de procesar información a partir de.
Características Generales y Entornos de Desarrollo
CURSO PROGRAMACIÓN BÁSICA SEMANA 2
Fundamentos de la Programación I
Fundamentos de la Programación I
FUNDAMENTOS DE PROGRAMACIÓN. INTRODUCCIÓN  Conceptos: Informática, Ordenador, Programa, Dato, Bit, Byte, Hardware, Software, Lenguaje de Programación,
Historia del Lenguaje C++
Informática Aplicada al Medio Ambiente - Curso 99/00 1 Tema 6. Introducción a la programación 1 Conceptos básicos 2 Los algoritmos – Concepto de algoritmo.
“Conceptos Básicos de Java”
Informática Aplicada al Medio Ambiente - Curso 99/00 1 Tema 6. Introducción a la programación 1 Conceptos básicos 2 Los algoritmos – Concepto de algoritmo.
Lenguajes de Programación Tema 1. Introducción y conceptos generales DOCENTE: ING. SOFIA MAGDA RIOS CHURA.
Ingeniería de Sistemas. Programación II Python ¿Qué es Python? Python es un lenguaje de programación creado por Guido Van Rossum a principios de los.
Lenguaje de Programación II
UA.- Algoritmos Computacionales
Características de los Sistemas Operativos
Informática Aplicada al Medio Ambiente - Curso 99/00 1 Tema 6. Introducción a la programación 1 Conceptos básicos 2 Los algoritmos – Concepto de algoritmo.
Es un ordenador de software que puede ejecutar un sistema operativo por el mismo, este tipo de sistemas operativos, presentan una interface a cada proceso.
PROGRAMACIÓN BÁSICA CONCEPTOS BÁSICOS Software. TEMAS:  Software y sus funciones  Tipos de Software  Software de Sistemas  Software de Aplicación.
EVOLUCIÓN DE LOS PARADIGMAS DE PROGRAMACIÓN Integrantes: Christian Abad, Kevin Colcha.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
Estructura de Sistemas Operativos
Transcripción de la presentación:

Ingeniería en Computación Lenguajes de Programación Centro Universitario Valle de México Ingeniería en Computación Análisis de los Lenguajes de Programación Historia de los Lenguajes de Programación Elaborador por: Dra. Maricela Quintana López Febrero 2017

Unidad de Competencia I Objetivo General: Conocer la historia de los lenguajes de programación. Conocimientos: Origen, evolución y clasificación de los lenguajes de programación.

Lenguajes de programación Las instrucciones que deben darse a una computadora para que esta realice algo se conoce como PROGRAMA. Crear esas instrucciones es el acto de PROGRAMAR, y puede hacerse en diferentes lenguajes. Esos diferentes lenguajes se conocen como LENGUAJES DE PROGRAMACIÓN

Lenguajes de Programación Facilitan la expresión y comunicación de ideas computacionales entre personas y máquinas Clasificaciones Bajo Nivel Alto Nivel Interpretado Compilado

Clasificación de los lenguajes de Programación Los lenguajes de programación se pueden clasificar como: Tipo Ejemplos de Lenguajes Bajo Nivel Código Máquina, Ensamblador Alto Nivel C, Pascal, C++, Java, LISP, Haskell PROLOG

Lenguajes de Programación de Bajo Nivel Las instrucciones ejercen un control directo sobre el hardware de la computadora por lo que es dependiente de ésta. La palabra bajo no implica que sea menos potente, sino que la abstracción entre el lenguaje y el hardware es reducida. Uso: Tareas críticas de sistemas operativos, Aplicaciones en Tiempo Real y controladores de dispositivos

Lenguaje Máquina Las primeras computadoras, como la ENIAC, solo podían ser programadas en el código binario, es decir, patrones de unos y ceros, a este lenguaje se le conoce como Lenguaje Máquina

Historia Los programadores examinaban la memoria para depurar sus programas. 0 0101 1010 1001 0100 0110 Simplificación usando octal y hexadecimal. Octal: 1324506 Hexadecimal: 5A946 A pesar de la simplificación, la programación era compleja y se podían cometer errores

Lenguaje Ensamblador En los 50’s se creó una notación que usaba mnemónicos. A estos mnemónicos se les llamaba código de ensamblaje (ASSEMBLY) y se decía que se programaba en Lenguaje Ensamblador. Código Operación Mnemónico Instrucción 100010100101 MOV AX, 5 AX = 5 010100101001 MUL BX AX = AX * BX

Lenguaje Ensamblador

Traductores TRADUCCIÓN PARA QUE LA COMPUTADORA LO PUEDA EJECUTAR Lenguaje de Programación PROGRAMA FUENTE PROGRAMA EJECUTABLE

Traductor Un traductor es cualquier programa que toma como entrada un texto escrito en un lenguaje, llamado fuente, y da como salida un texto en un lenguaje destino. TRADUCTOR Lenguaje Fuente Lenguaje Destino

Ensambladores La traducción del mnemónico a su patrón correspondiente se hacia manualmente. Posteriormente se hicieron traductores automáticos llamados ensambladores (ASSEMBLER).

Lenguajes de Alto nivel Las computadoras son mas populares y proliferan lenguajes sencillos de aprender y cómodos de utilizar y se les conoce como Lenguajes de Alto Nivel. La palabra Alto se refiere a la capacidad de expresar el algoritmo de una manera adecuada al pensamiento humano. Se pueden clasificar por si son interpretados o compilados

Intérpretes Es un procesador de lenguaje. En lugar de producir una traducción, ejecuta las operaciones indicadas en el lenguaje fuente con las entradas especificadas por el usuario. Programa fuente Intérprete Salida Entrada

Compiladores Si el compilador genera un ejecutable en lenguaje máquina entonces el archivo puede ser ejecutado para procesar las entradas y producir las salidas Programa Ejecutable Entrada Salida

Lenguajes de Alto Nivel Clasificación de acuerdo a su tipo y paradigma de programación empleado Lenguaje Tipo Paradigma C, Pascal Compilado Imperativo Basic Interpretado Java Híbrido Orientado a Objetos C++ LISP, ML, HASKELL Funcional PROLOG Programación Lógica

Compiladores… De acuerdo con el programa a ejecutar, se elegían las rutinas de la biblioteca y se integraban para conformar el proceso que realizaría la computadora. Quien hacía la integración se le llamaba compilador. La almirante científica Grace Murray Hopper inventó el compilador, una herramienta que traducía los comandos del inglés al código informático, líder del equipo que inventó el lenguaje COBOL.

Historia En 1952 se terminó lo que se considera el primer compilador A-0, un programa que permite utilizar palabras en inglés en lugar de números. A éste le siguieron otros como: ARITH-MATIC, MATH-MATIC and FLOW-MATIC

Programación Imperativa Es el más antiguo y mejor desarrollado paradigma de programación. Surgió con las primeras computadoras, alrededor de la década de los 40’s Las computadoras de esa época almacenaban sus programas fuera de la memoria usando un tablero cableado.

FORTRAN En 1957 un nuevo lenguaje, FORTRAN (FORmula TRANslator), permitía a una computadora realizar tareas repetitivas de un conjunto simple de instrucciones usando ciclos.

COBOL En 1960 se desarrolló COBOL, Common Business Oriented Language. Diseñado para su uso en negocios. Los primeros esfuerzos en COBOL fueron por la legibilidad de programas computacionales independientes de la máquina, tanto como sea posible.

BASIC En 1963, Thomas Kurtz y John Kemeny crearon BASIC, un lenguaje de programación fácil de aprender.

BCPL Basic Combined Programming Language Diseñado por Martin Richards de la Universidad de Cambridge en 1966 debido a las dificultades experimentadas con el lenguaje CPL. El lenguaje fue descrito por primera vez en un proyecto presentado en una conferencia informática en 1969.

Historia MULTICS (Multiplexed Information and Computer Service) vs UNICS Los programadores Kenneth Thompson y Dennis Ritchie de AT&T Bell Laboratorios desarrollaron el sistema operativo UNIX

Lenguaje B Fue creado en 1970, por Ken Thompson, con la finalidad de reestructurar al sistema UNIX. Simplificación del BCPL Las primeras implementaciones fueron para las minicomputadoras PDP-7 y PDP-11 ejecutando versiones antiguas de UNIX.

Lenguaje C  Dennis Ritchie, modifica el Lenguaje B, para así crear el Lenguaje C (1972), para rescribir el sistema UNIX en éste lenguaje. La diferencia entre el Lenguaje B y el Lenguaje C, es que este último permitía el diseño de nuevos tipos de datos. 1997 † 2011

Lenguaje C 1978 Brian Kernighan y Dennis Ritchie publicaron una descripción oficial de C.

Lenguaje C C debe su alto grado de portabilidad a que tiene un núcleo compacto de lenguaje con pocos elementos dependientes del hardware. La librería estándar de C provee las funciones para esos propósitos.

Programación Funcional Surgió como un paradigma a principios de 1960. Su creación fue motivada por la necesidad de los investigadores de Inteligencia Artificial y sus ramas: Computación Simbólica Prueba de Teoremas Sistemas Basados en reglas Procesamiento de lenguaje Natural

LISP John McCarthy (1927-2011) El lenguaje funcional por excelencia fue LISP (LISt Processing – Procesamiento de Listas) Desarrollado por John McCarthy, quien también acuño el término Inteligencia Artificial

Programación Lógica PROgramming LOGic Surgió a principios de 1970. Su creación fue motivada por las necesidades de los investigadores de Inteligencia Artificial.

PROLOG Raíces en la lógica de primer orden, o lógica de predicados. Alain Colmerauer y Philippe Roussel Lenguaje de Programación Lógica de propósito general. Raíces en la lógica de primer orden, o lógica de predicados.

Programación Orientada a Objetos Provee un modelo en el cual el programa es una colección de objetos que interactúan entre sí por medio de mensajes que transforman su estado. La encapsulación, herencia y polimorfismo son características de la programación orientada a objetos. Ejemplos: c++, java, c#, Eiffel

El lenguaje C++ A partir de C surge C++ a principios de la década de los ochenta en los Laboratorios Bell. C++ mejora algunas de las características de C pero, además, permite la Programación Orientada a Objetos (OOP). C++ no es un lenguaje que sigue fielmente el paradigma de OO (Híbrido) BJARNE STROUSTRUP Creator of C++

Lenguaje C++ 1983 se presenta C++ es presentado como C con clases 1985 se presenta el primer libro de C++ 1998 C++ es aceptado como estándar de ISO

JAVA 1995 Java es presentado Desarrollado por James Gosling de Sun Microsystems. El lenguaje deriva mucho de su sintaxis de C y C++, pero tiene menos facilidades de bajo nivel que cualquiera de ellos.

JAVA Las aplicaciones de Java son compiladas a bytecodes que se pueden ejecutar en cualquier máquina virtual  (JVM). Java es, a partir del 2012, uno de los lenguajes de programación más populares en uso.

Historia de los lenguajes La vida continua, a lo largo de ella varios lenguajes van muriendo, dejan de usarse, y otros nuevos aparecen. Los paradigmas cambian también, surgen otros más. Paradigmas y lenguajes van de la mano creciendo y cambiando para atender las nuevas necesidades del mundo.

Referencias Allen Tucker, Robert Noonan; Lenguajes de Programación Principios y Paradigmas. Spanish Edition. MacGrawHill 2011. Vicente Trigo Aranda; Historia y evolución de los lenguajes de programación. Manual formativo de ACTA. ISSN 1888-6051, No. 34 pags 85-95, 2004.

Guion Explicativo Este material sirve para introducir al alumno a la historia de los lenguajes de programación. Las diapositivas deben verse en orden, y debe revisarse el tema completo en aproximadamente 10 horas. El profesor puede agregar o dejar como actividad, la investigación de más lenguajes de los diferentes paradigmas. Es conveniente presentar más programas en los diferentes lenguajes.