Lenguajes de Programacin
Sesin 1: Introduccin a Lenguajes
Lenguajes de Programacin
Los lenguajes de Programacin son el corazn de
la Ciencia de la Computacin.
Son herramientas que usamos no solo para
comunicarnos con las mquinas sino tambin con
las personas.
el valor de un lenguaje se debe juzgar segn la
forma en que afecta la produccin de Software y
a la facilidad con la que puede integrarse a otras
herramientas
Slide 2
Objetivos
Adquirir
Habilidad
Enfatizar
Slide 3
la abstraccin.
Contenido:
Por
qu estudiar Lenguajes?
Historia
de los Lenguajes
Paradigmas
en Lenguajes
Criterios
Slide 4
Slide 5
Ejemplo: Recursin
Slide 6
Slide 7
Slide 8
el vocabulario
El lenguaje
equivale a comunicacin.
el conocimiento de construcciones
posibles.
Slide 9
Slide 10
calculo
ADA Fortran
inteligencia artificial
Prolog - ML
Slide 11
Slide 12
Contenido:
Por
qu estudiar Lenguajes?
Historia
de los Lenguajes
Paradigmas
en Lenguajes
Criterios
Slide 13
ENIAC
Slide 15
15
Slide 17
Slide 22
Contenido:
Por
qu estudiar Lenguajes?
Historia
de los Lenguajes
Paradigmas
en Lenguajes
Criterios
Slide 23
Paradigmas de Lenguajes
Se
Imperativo (Estructurado)
Aplicativo (Funcional)
Orientado a Objetos
Lgico
Slide 24
Lenguajes Imperativos
Su
Lenguajes
orientados a instrucciones
El
Ejemplos:
Sintaxis:
Slide 25
Lenguajes Imperativos
Programacin:
ouput).
Elementos:
Slide 26
Lenguajes Funcionales
Su
Es
Programar
Ejemplos:
Sintaxis:
Slide 27
F1(F2(F3(x)))
Lenguajes Funcionales
Programacin:
Elementos:
Slide 28
Orientados a Objetos
Su
Programar
Ejemplos:
Sintxis:
Slide 29
O1 ->mensaje-> O2.
Orientados a Objetos
Lenguajes
diseos
Sintaxis:
Programacin:
Elementos:
modelado de
herencia, encapsulamiento.
Slide 30
objetos,
clases,
Lenguajes Lgicos
Definen
Utiliza
Ejemplos:
Sintaxis:
Slide 31
Prolog
Contenido:
Por
qu estudiar Lenguajes?
Historia
de los Lenguajes
Paradigmas
en Lenguajes
Criterios
Slide 32
Slide 33
Facilidad de Escritura
La
Simplicidad
Claridad
Ortogonalidad
Soporte
Slide 34
de Abstraccin
Facilidad de Escritura
Simplicidad
Facilidad de Escritura
Simplicidad
Sin embargo,
El lenguaje ms usado (C++) es complejo.
Uno de los ms recomendados (Ada) es
grande y complejo.
Java, que naci con vocacin de ser simple,
tiende a hacerse ms grande y complejo.
Slide 36
Facilidad de Escritura
Claridad
Slide 37
Facilidad de Escritura
Ortogonalidad
Slide 38
de
generalidad
sin
Facilidad de Escritura
Ortogonalidad
Slide 39
Facilidad de Escritura
Ortogonalidad
Slide 40
Facilidad de Escritura
Soporte
de Abstraccin
Slide 41
Legibilidad
Fcil
SEMANTICA
SINTAXIS
DEFINICION
ESTRUCTURAS
DE DATOS
ESTRUCTURAS
DE CONTROL
Slide 42
Legibilidad
Semntica
Slide 43
Legibilidad
Sintaxis
Documentacin y comentarios
Eleccin de nombres
Uso de constantes
If-then-else anidados
Separacin de sentencias
Indentacin
Slide 44
Legibilidad
Sintaxis
Slide 45
Legibilidad
Definicin
del lenguaje
Portabilidad
Definiciones formales
Slide 46
Legibilidad
Estructuras
Programacin estructurada
Estructuras
Slide 47
de control
de datos
Confiabilidad
Correcto:
Verificacin
Chequeo
Robusto
Slide 48
de tipos
Confiabilidad
Chequeo
de tipos
Robusto
Manejo de excepciones
Slide 49
Mantenibilidad
Modificabilidad
Factoreo
Localidad
Slide 50
Mantenibilidad
Mantenible
Slide 51
Eficiencia
Tiempo
y Espacio
Esfuerzo
humano
Optimizable
Slide 52
Contenido:
Por
qu estudiar Lenguajes?
Historia
de los Lenguajes
Paradigmas
en Lenguajes
Criterios
Slide 53
de la aplicacin
Slide 54
de verificacin
Slide 55
de programacin
Slide 56
Slide 57
de uso
Costo de ejecucin
Costo de traduccin
Costo de mantenimiento
Slide 58