Download software y su evolución

Document related concepts

Dylan (lenguaje de programación) wikipedia , lookup

APL wikipedia , lookup

Ocaml wikipedia , lookup

Visual Prolog wikipedia , lookup

Lisp wikipedia , lookup

Transcript
COMPUTACIÓN II
LENGUAJE PROGRAMACIÓN
SOFTWARE Y SU EVOLUCIÓN
Objetivos:
•Explicar el Lenguaje de Programación.
•Describir las características de los principales
lenguajes, compiladores e interpretes.
•Reconocer el Lenguaje Java.
•Definir Software de Productividad.
SOFTWARE Y SU EVOLUCIÓN
Lenguaje de programación
Conjunto de normas «lingüísticas» que permiten escribir
un programa y que éste sea entendido por el ordenador y
pueda ser trasladado a ordenadores similares para su
funcionamiento en otros sistemas.
SOFTWARE Y SU EVOLUCIÓN
SOFTWARE Y SU EVOLUCIÓN
Algoritmo.
Pseudocódigo.
Lenguaje de
Programación.
Conjunto de
Instrucciones que
especifican la secuencia
de operaciones a
realizar, en orden, para
resolver un problema.
SOFTWARE Y SU EVOLUCIÓN
Algoritmo.
Pseudocódigo.
Lenguaje de
Programación.
Es un lenguaje de
especificación de algoritmos,
de uso fácil y sintaxis similar
al lenguaje de programación
a utilizar, que permite al
programador concentrarse
en las estructuras de control,
y olvidarse de la sintaxis del
lenguaje a utilizar.
SOFTWARE Y SU EVOLUCIÓN
Algoritmo.
Pseudocódigo.
Lenguaje de
Programación.
Conjunto de
instrucciones, bajo una
sintaxis que son
entendidas por el
ordenador.
SOFTWARE Y SU EVOLUCIÓN
Programa
Conjunto de
instrucciones
ordenadas
correctamente
que permiten
realizar una
tarea o trabajo
específico.
SOFTWARE Y SU EVOLUCIÓN
SOFTWARE Y SU EVOLUCIÓN
Instrucciones de un Programa
• De entrada/salida
Leer (X) - Mostrar (Y)
• De calculo
Raíz (Z)
• De control
Si X != Y Salir
• De transferencia de
datos y asignación
Asignar (Z) = 7
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Naturaleza
del Lenguaje
Desarrollo
Histórico
Estructura
Programas
•Lenguaje de bajo nivel
•Lenguaje de nivel medio
•Lenguaje de alto nivel
•Primera Generación.
•Segunda Generación.
•Tercera Generación.
•Cuarte Generación.
•Quinta Generación.
•Lenguajes Lineales.
•Lenguajes Estructurados.
•Lenguajes Orientados a Objetos.
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Naturaleza
del Lenguaje
•Lenguaje de bajo nivel
•Lenguaje de nivel medio
•Lenguaje de alto nivel
Lenguaje de programación
que el ordenador puede
entender a la hora de
ejecutar programas, lo que
aumenta su velocidad de
ejecución, pues no necesita
un intérprete que traduzca
cada línea de instrucciones.
1 1 01 1 0 1 0 0 0
1 1 11 0 1 0 0 1 1
0 1 01 0 0 0 1 1 0
1 0 11 1 0 1 1 1 0
1 0 01 0 1 0 1 1 0
1 1 10 1 1 1 0 0 0
0 0 01 0 0 1 0 1 1
1101110
1010110
0111000
1001011
1101000
1010011
1000110
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Naturaleza
del Lenguaje
•Lenguaje de bajo nivel
•Lenguaje de nivel medio
•Lenguaje de alto nivel
Ensamblador Lenguaje de programación
que está a un paso del lenguaje de
máquina. El ensamblador traduce cada
sentencia del lenguaje ensamblador a
una instrucción de máquina.
Macroensamblador Lenguaje
ensamblador que utiliza macros para su
utilización (Ver Macro).
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Naturaleza
del Lenguaje
•Lenguaje de bajo nivel
•Lenguaje de nivel medio
•Lenguaje de alto nivel
Lenguaje de programación en el que las
instrucciones enviadas para que el
ordenador ejecute ciertas órdenes son
similares al lenguaje humano. Dado que
el ordenador no es capaz de reconocer
estas órdenes, es necesario el uso de un
intérprete que traduzca el lenguaje de
alto nivel a un lenguaje de bajo nivel que
el sistema pueda entender
Principales lenguajes de alto nivel










Ada
ALGOL
BASIC
C++
C#
COBOL
Fortran
Java
Lisp
Modula-2






Pascal
Perl
PHP
PL/1
PL/SQL
Python
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
•Primera Generación.
•Segunda Generación.
Desarrollo
•Tercera Generación.
Histórico
•Cuarte Generación.
•Quinta Generación.
Conocidos como lenguajes 1 1 0
1101000
maquina, son en los que se 1 1 1
1010011
utiliza el código binario (unos 0 1 0
1000110
y ceros) para comunicarse 1 0 1
1101110
con la computadora, los
1 0 01 0 1 0 1 1 0
únicos que lo hacen son los 1 1 1
0111000
diseñadores de los "chips" 0 0 0
1001011
de los procesadores.
1101110
1010110
0111000
1001011
1101000
1010011
1000110
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Desarrollo
Histórico
•Primera Generación.
•Segunda Generación.
•Tercera Generación.
•Cuarte Generación.
•Quinta Generación.
conocidos también como ensambladores,
se basan en lo que es la comprensión de
varias palabras en una sola, por ejemplo:
ADC significara "sumar con reserva"(en
ingles: ADd with Carry)
Haciendo notoria la aclaración, de que
esta serie de instrucciones serán
traducidas al lenguaje maquina por el
compilador del lenguaje.
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Desarrollo
Histórico
•Primera Generación.
•Segunda Generación.
•Tercera Generación.
•Cuarte Generación.
•Quinta Generación.
o de alto nivel son los lenguajes
más comunes (C, Pascal, Algol,
Cobol, Fortran, BASIC). Estos
lenguajes se asemejan ya un poco
más al lenguaje humano, al utilizar
palabras completas (en ingles) para
la codificación de los programas
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Desarrollo
Histórico
•Primera Generación.
•Segunda Generación.
•Tercera Generación.
•Cuarte Generación.
•Quinta Generación.
Estos lenguajes se han diseñado para
facilitar la realización de muy variadas
tareas, como lo son la simulación de
fenómenos físicos, manipulación de datos
estadísticos, etc. Lenguajes: Visual Basic,
INFORMIX 4GL, Visual J++, Visual C,
algunos autores consideran las planillas
de calculo dentro de esta generación.
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Desarrollo
Histórico
•Primera Generación.
•Segunda Generación.
•Tercera Generación.
•Cuarte Generación.
•Quinta Generación.
En esta generación, el programador solo
ingresa hechos y hace consultas, no se
preocupa de cómo hacer los algoritmos
que entregan la respuesta, algunos
autores la consideraban como un sueño,
pero gracias al avance de la tecnología,
hoy en día es toda una realidad.
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Estructura
Programas
•Lenguajes Lineales.
•Lenguajes Estructurados.
•Lenguajes Orientados a Objetos.
Hace mucho tiempo atrás el término programación se
refería a una codificación lineal absolutamente críptica y
misteriosa
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Estructura
Programas
•Lenguajes Lineales.
•Lenguajes Estructurados.
•Lenguajes Orientados a Objetos.
Sus partes se realizan claramente,
mediante el uso de tres estructuras
lógicas de control:
• Secuencia: Sucesión simple de
dos o mas operaciones.
• Selección: bifurcación
condicional de una o mas
operaciones.
• Interacción: Repetición de una
operación mientras se cumple
una condición.
SOFTWARE Y SU EVOLUCIÓN
Clasificación de los Lenguajes de Programación
Estructura
Programas
•Lenguajes Lineales.
•Lenguajes Estructurados.
•Lenguajes Orientados a Objetos.
Introdujeron al lenguaje diario de
los profesionales del área,
conceptos tales como herencia,
polimorfismo, etc., que hicieron que
el modo de pensar y concebir el
desarrollo de una aplicación fuera
muy diferente a lo que había sido
hasta ese momento con la
programación lineal o estructurada.
SOFTWARE Y SU EVOLUCIÓN
Compilador Programa capaz
de traducir un código fuente,
escrito en el lenguaje de alto
nivel que sea, a un
código_objeto escrito en
lenguaje de maquina.
Intérprete Programa que
realiza un análisis de una
aplicación escrita en un
lenguaje no-máquina (fácil de
entender y trabajar con él) y
lo convierte en lenguaje
máquina entendible por el
ordenador.
código fuente
Compilador
Intérprete
Código
objeto
Traducción
y ejecución
sentencia a
sentencia
SOFTWARE Y SU EVOLUCIÓN
Código Fuente
texto que contiene
las instrucciones
del programa,
escritas en el
lenguaje de
programación.
Código Objeto
Código generado
por un compilador
o un ensamblador
traducido por un
código fuente de
un programa.
código fuente
Compilador
Intérprete
Código
objeto
Traducción
y ejecución
sentencia a
sentencia
SOFTWARE
Video: https://www.youtube.com/watch?v=oKQMoxJR5uk
Conclusión
Hemos Explicado el Lenguaje de Programación.
Descrito las características de los principales lenguajes,
compiladores e interpretes.