Introduccin' Conceptos Generales - PowerPoint PPT Presentation

1 / 48
About This Presentation
Title:

Introduccin' Conceptos Generales

Description:

... para lo mismo, resolver problemas, que en el caso de los carros es transporte. ... sintaxis de campo fijo, utiliza la posici n sobre un rengl n de entrada para ... – PowerPoint PPT presentation

Number of Views:60
Avg rating:3.0/5.0
Slides: 49
Provided by: mcjuancarl
Category:

less

Transcript and Presenter's Notes

Title: Introduccin' Conceptos Generales


1
Introducción. Conceptos Generales
  • M.C. Juan Carlos Olivares Rojas

2
Agenda
  • Clasificación de los lenguajes de programación.
    Paradigmas de programación
  • Elementos esenciales de un lenguaje de
    programación.
  • Abstracción de los lenguajes de programación.

3
Clasificación de los Lenguajes de Programación
  • Actividad menciona desde tu punto de vista
    cuales son los cinco lenguajes de programación
    más populares alrededor del mundo.
  • Los lenguajes más populares son según Developers
    Shift to Dynamic Programming Language, Linda
    Dailey Paulson, Computer Magazine, febrero de
    2007, IEEE Computer Society Press, pp. 12-15.

4
Introducción
  • 1. Java estático
  • 2. C estático
  • 3. C estático
  • 4. Visual Basic estático
  • 5. PHP dinámico
  • 6. Perl dinámico
  • 7. C
  • 8. Python estático
  • 9. JavaScript dinámico
  • 10. Ruby dinámico

5
Introducción
  • 11. SAS dinámico
  • 12. Delphi estático
  • 13. PL/SQL dinámico
  • 14. D estático
  • 15. ABAB dinámico
  • 16. Lisp/Scheme
  • 17. Ada estático
  • 18. Cobol dinámico
  • 19. Pascal estático
  • 20. Transact/SQL dinámico

6
Introducción
  • La principal razón para que las personas aprendan
    lenguajes de programación es utilizar la
    computadora como una herramienta para la
    resolución de problemas.

7
Introducción
  • Qué es un programa?
  • Un programa computacional es un conjunto de
    instrucciones detalladas, paso a paso, que le
    indican a la computadora cómo resolver un
    problema o realizar una tarea (Laudon).

8
Introducción
  • Qué es un lenguaje? Es un instrumento para
    comunicar dos entidades entre sí.
  • Es necesario que las dos entidades conozcan el
    mismo lenguaje para poderse comunicar en caso
    contrario se necesitará de un intermedio
    denominado traductor para podernos comunicar.

9
Problemática de Computación
10
Historia de los Lenguajes
11
Introducción
  • Las primeras computadoras fueron programadas sin
    lenguajes de programación, los técnicos sólo
    reconectaban los cables de los circuitos de la
    computadora para prepararla para varias tareas de
    procesamiento.
  • La idea de almacenar programas en la memoria de
    la computadora abrió el camino a los lenguajes de
    programación que permitieron a los programadores
    escribir una serie de comando y cargarlos en la
    computadora para su ejecución.

12
Introducción
  • Los primeros lenguajes de programación eran
    primitivos, pero en el transcurso de varias
    décadas, evolucionaron hasta dar paso a los
    lenguajes de hoy en día.
  • El lenguaje ensamblador permite a los
    programadores emplear palabras de comando
    abreviadas, como LDA (Loadcargar) en lugar de
    los 1s y 0s usados en el lenguaje máquina.

13
Introducción
  • Después aparecieron los lenguajes más elaborados
    para describir solución en base a algoritmos.
  • Se creía que con estos lenguajes se eliminarían
    los errores de programación, y aunque los errores
    fueron menos frecuentes y el tiempo de desarrollo
    disminuyó significativamente, pero los
    programadores también cometían errores, por lo
    que era necesario seguir desarrollando nuevos
    lenguajes de programación.

14
Introducción
  • Su característica importante es que tienen mayor
    parecido con los lenguajes humanos o lenguajes
    naturales.
  • De esta generación surge SQL y RPG-1, los cuales
    eliminan gran parte de la puntuación y las reglas
    gramaticales estrictas, que hacía complicados a
    los lenguajes de tercera generación.

15
Introducción
  • En la actualidad, los lenguajes de cuarta
    generación se usan en aplicaciones de base de
    datos. Un solo comando de SQL, reemplaza muchas
    líneas de código de tercera generación.
  • En 1982, un grupo de investigadores japoneses
    empezaron a trabajar en proyecto que denominaron
    de quinta generación que usaba Prolog, que es un
    lenguaje declarativo.

16
Introducción
  • Además de clasificarse por nivel y generación,
    los lenguajes de programación se clasifican por
    paradigma.
  • Los programadores afrontan los problemas de
    diferentes maneras, por lo cual seleccionan el
    paradigma de programación más adecuado.

17
Introducción
  • La frase Paradigma de Programación alude a la
    manera de conceptualizar y estructurar las tareas
    que realiza una computadora.
  • Existen numerosos paradigmas de programación y no
    son mutuamente excluyentes.
  • Los lenguajes de programación se ordenan mediante
    los paradigmas de programación que soportan.

18
Paradigmas
19
(No Transcript)
20
Otras clasificaciones
  • Los lenguajes se pueden clasificar de acuerdo a
    su propósito pudiendo ser de propósito general
    cuando con ellos se pueden realizar múltiples
    actividades o bien, de propósitos específico,
    cuando realizan una sola acción de excelente
    manera.
  • Los lenguajes de programación de propósito
    general (C, Java, Ada, Pascal, etc.) son los más
    utilizados.

21
Otras Clasificaciones
  • Los lenguajes de propósito general son como los
    autos sedán, sirven para todo, pero no son muy
    buenos para correr (deportivos) o para carga
    (trailer) por lo que se necesita de lenguajes de
    propósito específico (carros especiales) para
    ciertas circunstancias. Al final de cuentas,
    dichos lenguajes sirven para lo mismo, resolver
    problemas, que en el caso de los carros es
    transporte.

22
Otras clasificaciones
  • Por qué es necesario aprender más de un lenguaje
    de computación?
  • Por que en general, se busca utilizar la
    herramienta más sencilla y a la vez poderosa para
    resolver problemas de computación. Dominando
    diversos lenguajes se puede seleccionar aquel que
    se acople de mejor manera a nuestras necesidades.

23
Elementos esenciales de un lenguaje de
programación.
  • Los lenguajes de programación poseen diferentes
    características que a continuación se muestran.
  • Actividad Cuáles son las características y
    partes que tiene un lenguaje natural como el
    Español?
  • Qué partes y características tiene un Lenguaje
    de Programación de Computadoras como C?

24
Características
  • Legibilidad Un programa es legible si la
    estructura subyacente del algoritmo y los datos
    que el programa representa quedan de manifiesto
    al inspeccionar el texto del programa.
  • Facilidad de Escritura Las características
    sintácticas que hace que un programa sea fácil de
    escribir suelen hallarse en conflicto con las
    características que facilitan su lectura.

25
Características
  • Facilidad de Verificación Entender cada
    enunciado de un programa es relativamente fácil,
    el proceso global de crear programas correctos es
    en extremo difícil, por lo que se necesitan
    técnicas que permitan probar que el programa es
    matemáticamente correcto.

26
Características
  • Símbolos de Operadores Casi todos los lenguajes
    emplean los caracteres especiales () y (-) para
    representar las 2 operaciones aritméticas
    básicas. Casi todos los lenguajes adoptan alguna
    combinación y utilizan caracteres especiales para
    ciertos operadores.

27
Características
  • Facilidad de Traducción la traducción de los
    programas se dificulta conforme aumenta el número
    de construcciones sintácticas especiales. La
    clave para una traducción fácil es la regularidad
    de la estructura.
  • Carencia de Ambigüedad Una construcción ambigua
    permite dos o más interpretaciones distintas. El
    problema de ambigüedad surge por lo común no en
    la estructura de elementos individuales del
    programa, sino en la interacción entre diferentes
    estructuras.

28
Características
  • Conjunto de Caracteres Existen varios conjuntos
    de caracteres de uso amplio, como el conjunto
    ASCII, cada uno con un conjunto diferentes de
    caracteres especiales, además de las letras y
    dígitos básicos.
  • Identificadores La sintaxis básica para
    identificadores, una cadena de letras y dígitos
    que comienzan con una letra, es la mas usada. Las
    variaciones entre lenguajes se dan principalmente
    en la inclusión opcional de caracteres especiales
    como punto (.) y guión (-)

29
Características
  • Palabras clave y palabras reservadas Una palabra
    clave es un identificador que se usa como una
    parte fija de la sintaxis de un enunciado, por
    ejemplo IF. Una palabra clave es una palabra
    reservada y no se puede utilizar como un
    identificador. Casi todos los lenguajes emplean
    actualmente palabras reservadas con lo cual se
    mejora la capacidad de detección de errores de
    los traductores.

30
Características
  • Comentarios son mensajes que nos permiten
    mejorar la legibilidad de los programas sin
    interferir con su funcionamiento. Los comentarios
    pueden ser codificados de varias maneras
    dependiendo del lenguaje, como renglones
    separados en Fortran, / y / en C, al final
    de un renglón como en Ada, en un renglón (al
    principio o al final) con // como en C, o !
    en Fortran 90.

31
Características
  • Espacios en Blanco varían ampliamente de
    lenguaje a lenguaje. En Fortran no son
    significativos, excepto en cadena de caracteres.
    En Snobol 4 la concatenación es por medio de un
    espacio en blanco y también se utiliza como
    separador entre elementos de un enunciado. En C
    se pasan por alto.
  • Delimitadores es un elemento sintáctico que se
    usa simplemente para señalar el principio o final
    de alguna unidad sintáctica, como un enunciado o
    expresión.

32
Características
  • Formatos de campos libres y fijos una sintaxis
    es de campo libre si los enunciados de un
    programa se pueden escribir en cualquier parte de
    un renglón o las interrupciones entre renglones.
    Una sintaxis de campo fijo, utiliza la posición
    sobre un renglón de entrada para transmitir
    información.

33
Características
  • Expresiones son funciones que acceden a objetos
    de datos en un programa y devuelven algún valor.
    Las expresiones son los bloques sintácticos
    básicos de construcción a partir de los cuales se
    construyen enunciados.
  • Enunciados constituyen el componente sintáctico
    más destacado en los lenguajes imperativos. Su
    sintaxis tiene un efecto decisivo sobre la
    regularidad, legibilidad y facilidad de escritura
    generales del lenguaje.

34
Traductores de lenguaje
  • Son programas que traducen los programas fuente
    (escritos en lenguaje de alto nivel) a lenguaje
    máquina

PROGRAMA FUENTE
TRADUCTOR
LENGUAJE MAQUINA
35
Los traductores se dividen en
  • Compiladores Traduce los programas fuente
    (escritos en lenguaje de alto nivel) a lenguaje
    máquina. Ej. C y FORTRAN
  • Intérpretes Es un traductor que toma un programa
    fuente, lo traduce y a continuación lo ejecuta.
    Ej. BASIC, Smalltalk

36
Traducción
  • La traducción se divide en 2 partes principales
  • Análisis del programa fuente de entrada
  • Síntesis del programa objeto ejecutable
  • Un compilador básico realiza lo anterior de la
    manera siguiente

37
Estructura de un compilador
38
Proceso de Compilación
39
Traducción, Interpretación y Compilación
  • Ensamblador.
  • Preprocesador.
  • Traductor.
  • Interprete. ? Compilador.

40
(No Transcript)
41
Abstracción de los lenguajes de programación.
  • La abstracción hace referencia al nivel que se
    encuentran orientados los lenguajes de
    programación.
  • Los niveles de abstracción hacen referencia a que
    tan fácil y eficientes son los lenguajes de
    programación.

42
Introducción
  • Los lenguajes se clasifican de diferentes
    maneras. Pueden dividirse en 2 categorías
    principales
  • Lenguaje de Bajo Nivel Incluyen comandos que son
    específicos para una familia de microprocesadores
    determinados. Se requiere que un programador
    escriba instrucciones en lenguaje de bajo nivel
    para ese hardware específicamente, estas dependen
    del tipo de procesador, registros y direcciones
    de memoria.

43
Introducción
  • Lenguaje de Alto Nivel
  • Proporciona un nivel de abstracción que oculta el
    lenguaje ensamblador o de bajo nivel y
    proporciona palabras y gramática de comandos que
    son mas parecidos al lenguaje humano.

44
Introducción
  • Lenguajes de alto nivel como Cobol, Basic, Java y
    C, facilitan el proceso de programación al
    reemplazar cadenas ininteligibles de 1s y 0s, o
    comandos de ensamblador, con comandos mas
    sencillos como Print y Write.
  • Los comandos de lenguaje de alto nivel eliminan
    muchas líneas de código al incluir en un solo
    comando de alto nivel varios comandos de bajo
    nivel

45
Clasificación de los Lenguajes de Programación
Lenguajes de alto nivel
Lenguajes de bajo nivel
Lenguajes máquina
  • Son directamente inteligibles por la computadora
    (0 y 1)
  • Sus instrucciones son muy fáciles de recordar
    pero necesitan traducirse a lenguaje máquina por
    medio de un compilador o intérprete.

Sus instrucciones son mas sencillas de recordar,
pero necesitan ser traducidas al lenguaje máquina.
Ensamblador
C
VisualBasic
Fortran
Pascal
46
Ejemplo de instrucciones de suma y resta
47
Referencias
  • Ferreira, R., Material de la Unidad 1 del Curso
    de Lenguajes de Programación, Instituto
    Tecnológico de Morelia.

48
Preguntas, dudas y comentarios?
Write a Comment
User Comments (0)
About PowerShow.com