Diapositiva 1 - PowerPoint PPT Presentation

About This Presentation
Title:

Diapositiva 1

Description:

LENGUAJE DE PROGRAMACION sistema de escritura para la descripci n precisa de algoritmos o programas inform ticos. Los lenguajes de programaci n son herramientas ... – PowerPoint PPT presentation

Number of Views:196
Avg rating:3.0/5.0
Slides: 43
Provided by: alumnitosf
Category:

less

Transcript and Presenter's Notes

Title: Diapositiva 1


1
(No Transcript)
2
LENGUAJE DE PROGRAMACION
  • sistema de escritura para la descripción precisa
    de algoritmos o programas informáticos.
  • Los lenguajes de programación son herramientas
    que nos permiten crear programas y software.
    Entre ellos tenemos Delphi, Visual Basic, Pascal,
    Java, etc..
  • Una computadora funciona bajo control de un
    programa el cual debe estar almacenado en la
    unidad de memoria tales como el disco duro.
  • Los lenguajes de programación de una computadora
    en particular se conoce como código de máquinas o
    lenguaje de máquinas.

3
HISTORIA
  • Los lenguajes de programacion surge de Charles
    Babagge SXIX.
  • Predijo mucha de las teorias en que se basan las
    actuales  ordenadores,esto consistia  en la
    maquina analitica.
  • Por metivos tecnicos no se  realizo hasta SXX con
    la colaboracion de Ada Lovedby programo en
    tarjetas perforadas para la maquina de babagge,
    considerada la programadora.
  • La maq  analitica no se construyo.
  • En1823 el gob britanico apoyo para crear la maq
    de diferencias dispositivo mecanico para
    efectuar sumas.
  • Babagge abandona el proyecto y se dedica a la
    maquina analitica que contaba de 5 unidades
    basicas 1) Unidad de entrada.
  • 2) Memoria.
  • 3) Unidad de control.
  • 4) Unidad Aritmético-Lógica.
  • 5) Unidad de salida.
  • BABAGGE PADRE DE LA INFORMATICA NO REALIZO SUS
    INVENTOS POR FALTA DE LA ELECTRONICA.

4
TIPOS DE LENGUAJES DE PROGRAMACION
5
SEGÚN NIVEL DE ABSTRACCIÓN
6
LENGUAJE DE MAQUINA
  • El lenguaje de máquina de una computadora consta
    de cadenas de números binarios (0 y 1) y es el
    único que "entienden" directamente los
    procesadores.
  • Todas las instrucciones preparadas en cualquier
    lenguaje de máquina tienen por lo menos dos
    partes. Especifican una operación y una dirección
    de memoria.
  • Las instrucciones en lenguaje máquina dependen
    del hardware de la computadora y, por tanto ,
    diferirán de una computadora a
  • otra.

7
VENTAJAS
  • Transferir un programa a la memoria sin necesidad
    de traducción posterior.
  • Velocidad de ejecución superior a cualquier otro
    lenguaje de programación.

8
DESVENTAJAS
  • Dificultad y lentitud en la codificación,
  • Poca fiabilidad,
  • Dificultad grande de verificar y poner a punto
    los programas,
  • Los programas sólo son ejecutables en el mismo
    procesador.

9
LENGUAJE ENSAMBLADOR
  • Lenguaje de programación que posee una gramatica
    y estructura.
  • Trabaja directamente con el microprocesador por
    lo cual se debe de conocer el funcionamiento
    interno de este.
  • No puede ser ejecutado directamente en la
    computadora, sino que requiere de una
  • traducción a lenguaje de máquina.
  • El traductor de programas se llama
  • emsamblador.
  • Existen dos tipos ensambladores básicos y
    ensambladores modulares, o macro
  • ensambladores.

10
VENTAJAS
  • Velocidad .- Como trabaja directamente con el
    microprocesador al ejecutar un programa, pues
    como este lenguaje es el mas cercano a la máquina
    la computadora lo procesa mas rápido.
  • Eficiencia de tamaño .- Un programa en
    ensamblador no ocupa mucho espacio en memoria
    porque no tiene que cargan librerías y demás como
    son los lenguajes de alto nivel
  • Flexibilidad .- Es flexible porque todo lo que
    puede hacerse con una máquina, puede hacerse en
    el lenguaje ensamblador de esta máquina.

11
DESVENTAJAS
  • Tiempo de programación.- Requiere más
    instrucciones para realizar el mismo proceso, en
    comparación con un lenguaje de alto nivel.
  • Programas fuente grandes.- Por las mismas razones
    que aumenta el tiempo, crecen los programas
    fuentes simplemente requerimos más instrucciones
    primitivas para describir procesos equivalentes..
  • Peligro de afectar recursos inesperadamente.- Es
    posible al cometer errores programando afectar
    los recursos de la maquina, y esta se puede
    bloquear o reiniciar.
  • Falta de portabilidad.- Para cada máquina existe
    un lenguaje ensamblador.

12
LENGUAJE DE ALTO NIVEL
  • Es aquel que se aproxima más al lenguaje natural
    humano que al lenguaje binario de las
    computadoras, el que se conoce como lenguaje de
    bajo nivel.
  • Es independiente de un hardware determinado
  • Utiliza palabras del lenguaje humano (por lo
    general el inglés)
  • Expresa los algoritmos de una manera adecuada a
    la capacidad cognitiva humana, en lugar
  • de a la capacidad ejecutora de las
  • máquinas.

13
VENTAJAS
  • Son más fáciles de aprender que los lenguajes
    ensambladores.
  • Se pueden escribir más rápidamente.
  • Permiten mejor documentación.
  • El tiempo de formación de los programadores es
    relativamente corto comparado con otros
    lenguajes.
  • La escritura de programas se basa en reglas
    sintácticas similares a los lenguajes humanos.
  • Reducción del coste de los programas.
  • Transportabilidad.

14
DESVENTAJAS
  • La gran cantidad de lenguajes que existen
    actualmente en uso, además de las diferentes
    versiones o dialectos que se han desarrollado de
    algunos de ellos.
  • Incremento del tiempo, al necesitarse diferentes
    traducciones del programa fuente para conseguir
    el programa definitivo.
  • No se aprovechan los recursos internos de la
    máquina, que se explotan mucho mejor en lenguajes
    maquina y ensambladores.
  • Aumento de la ocupación de memoria.
  • El tiempo de ejecución de los programas es mucho
    mayor.

15
COBOL
  • Creado en 1960 por un comité denominado CODASYL,
    patrocinado por el Departamento de Defensa de los
    Estados Unidos.
  • Su nombre proviene de COmmon Business Oriented
    Language.
  • Fue diseñado inspirándose en el lenguaje
    FLOW-MATIC de Grace Hopper y el IBM COMTRAN de
    Bob Bemer.
  • En 1968 salió la primera versión ANSI del
    lenguaje, siendo revisada posteriormente en 1974
    (COBOL ANS-74), 1985 (COBOL ANS-85, ampliado en
    1989 con funciones matemáticas, finalizando el
    estándar actual más usado, conocido como
    COBOL-ANSI).
  • En la revisión de 2002 (COBOL ANS-2002) se le
    añadió orientación a objetos, aunque desde la
    revisión de 1974 se podía crear un entorno de
    trabajo similar a la orientación a objetos, y un
    método de generación de pantallas gráficas
    estandarizado Actualmente se está preparando
    otra revisión que se espera que esté finalizada
    para el año 2008.
  • Entre sus inconvenientes están sus rígidas reglas
    de formatos de escritura, la necesidad de
    describir todos los elementos al máximo detalle,
    la extensión excesiva en sus sentencias e incluso
    duplicación en algunos casos, la inexistencia de
    funciones matemáticas y, por último, su no
    adecuación a las técnicas de programación
    estructurada.

16
FORTRAN
  • Abreviatura de Fórmula Translator (traductor de
    fórmulas), fue definido alrededor del año 1955 en
    los Estados Unidos por la compañía IBM.
  • Es el más antiguo de los lenguajes de alto nivel,
    pues antes de su aparición todos los programas se
    escribían en lenguaje ensamblador o en lenguaje
    máquina.
  • Es un lenguaje especializado en aplicaciones
    técnicas y científicas, caracterizándose por su
    potencia en los cálculos matemáticos, pero
    estando limitado en las aplicaciones de gestión,
    manejo de archivos, tratamiento de cadenas de
    caracteres y edición de informes.
  • El lenguaje fue diseñado teniendo en cuenta que
    los programas serían escritos en tarjetas
    perforadas de 80 columnas. Así por ejemplo, las
    líneas debían ser numeradas y la única alteración
    posible en el orden de ejecución era producida
    con la instrucción goto.
  • Estas características han evolucionado de versión
    en versión. Las actuales contienen subprogramas,
    recursión y una variada gama de estructuras de
    control.

17
C
  • Fué diseñado alrededor de 1970 por Dennis
    Ritchie, de los Laboratorios Bell. Se emplea para
    escribir compiladores y sistemas operativos
    actualmente el lenguaje C es uno de los más
    usados junto con sus derivados (visual C, C,
    C, etc).
  • Un programa en C consta de módulos que pueden
    llamarse recursivamente, pero no de manera
    anidada. El manejo de la memoria es dinámico.
  • La base del lenguaje fue creada por programadores
    y para programadores, a diferencia de otros
    lenguajes como Basic o Cobol que fueron creados
    para que los usuarios resolvieran pequeños
    problemas de sus ordenadores y el segundo para
    que los no programadores pudiesen entender partes
    del programa.
  • Combina la programación estructurada de los
    lenguajes de alto nivel con la flexibilidad del
    ensamblador.
  • Aunque fue diseñado inicialmente para la
    programación de sistemas, posteriormente su uso
    se ha extendido a aplicaciones técnico-científicas
    , de bases de datos, de proceso de textos, etc.

18
Según su ejecución
19
COMPILADORES
  • Diseno de algoritmo
  • Programa en un papel

Programa en un archivo en el disco duro
  • Introduccion
  • Modificacion

Editor de texto
  • Almacenamiento
  • Recuperacion

20
Lenguaje de Alto Nivel
No entiende
traducido
Lenguaje maquina comprenda
Compilador
21
Lenguaje de Bajo Nivel
Lenguaje de Alto Nivel
Compilador del programa
DESVENTAJA
DIFERENTE COMPILADOR
22
escrito
Introduce
Alto nivel
PROGRAMA
Maquina (editor)
traduce
llama
Codigo fuente
Lenguaje maquina
COMPILADOR
Almacena resultado
archivo
Codigo objeto
llamado
23
INICIO
Prog.fuente
Compilar prog.
modificacion
ERRORES
programa
Prog. ejecutable
enlazador
ejecucion
24
TRADUCTORES
traduce
PROGRAMA FUENTE
Ejecuta
Prog clasicos
Q. BASIC
Practicamente no utiliza
BASIC
RENACER
JAVA
aparicion
Computadoras personales
25
Segun el Paradigma Programacional
26
Lenguaje de Programación Imperativos
  • Son aquellos lenguajes en los cuales se le ordena
    a la computadora cómo realizar una tarea
    siguiendo una serie de pasos o instrucciones.
  • Los lenguajes imperativos se basan en comandos u
    órdenes que se le dan a la computadora para que
    haga algo, con el fin de organizar o cambiar
    valores en ciertas partes de la memoria.
  • BASIC, C, Java, Clipper, Dbase, C, PHP, Perl,
    etc.

27
  • Los primeros lenguajes imperativos fueron los
    lenguajes de máquina de los computadores
    originales. En estos lenguajes, las instrucciones
    fueron muy simples, lo cual hizo la
    implementación de hardware fácil, pero
    obstruyendo la creación de programas complejos.
    Fortran, cuyo desarrollo fue iniciado en 1954 por
    John Backus en IBM, fue el primer gran lenguaje
    de programación en superar los obstáculos
    presentados por el código de máquina en la
    creación de programas complejos.

28
Lenguajes Imperativos Procedurales
  • En este tipo de lenguajes, la arquitectura consta
    de una secuencia de celdas, llamadas memoria, en
    las cuales se pueden guardar en forma codificada,
    lo mismo datos que instrucciones y de un
    procesador, el cual es capaz de ejecutar de
    manera secuencial una serie de operaciones,
    principalmente aritméticas y booleanas, llamadas
    comandos .

29
  • Con un lenguaje procedural el usuario
    (normalmente será un programador) especifica qué
    datos se necesitan y cómo obtenerlos.
  • Estos lenguajes acceden a un registro, lo
    procesan y basándose en los resultados obtenidos,
    acceden a otro registro, que también deben
    procesar. Así se va accediendo a registros y se
    van procesando hasta que se obtienen los datos
    deseados.

30
BASIC
  • El lenguaje BASIC fue creado en 1964 por los
    norteamericanos John Kemeny y Thomas Kurtz.
  • Se uso para le aenseñanza y para la programacion
    profesional.
  • Era un lenguaje poco estructurado y recibió
    muchas críticas por promover malos hábitos de
    programación.

31
Lenguaje de Programación Orientados a Objetos
  • El elemento fundamental de la OOP es, como su
    nombre lo indica, el objeto. Podemos definir un
    objeto como un conjunto complejo de datos y
    programas que poseen estructura y forman parte de
    una organización.
  • La programación orientada a objetos expresa un
    programa como un conjunto de estos objetos, que
    colaboran entre ellos para realizar tareas. Esto
    permite hacer los programas módulos más fáciles
    de escribir, mantener y reutilizar.
  • De esta forma, un objeto contiene toda la
    información, (los denominados atributos) que
    permite definirlo e identificarlo frente a otros
    objetos.

32
  • A su vez, dispone de mecanismos de interacción
    (los llamados métodos) que favorecen la
    comunicación entre objetos, y en consecuencia, el
    cambio de estado en los propios objetos. Esta
    característica lleva a tratarlos como unidades
    indivisibles, en las que no se separan (ni deben
    separarse) información (datos) y procesamiento
    (métodos).
  • Algunos lenguajes de POO Ada, Delphi, C,Ruby,
    etc.

C
33
DELPHI
  • Delphi es un entorno de desarrollo de software
    diseñado para la programación de propósito
    general con énfasis en la programación visual.
  • En sus diferentes variantes, permite producir
    archivos ejecutables para Windows, Linux y la
    plataforma .NET.

34
  • Delphi está basado en una versión moderna de
    Pascal, denominada Object Pascal. Borland en los
    últimos años defendía que el nombre correcto del
    lenguaje es también Delphi.
  • Pero en los manuales el nombre del lenguaje
    aparecía como Object Pascal, por lo que la
    comunidad de programadores no ha adoptado
    mayoritariamente este cambio

35
LENGUAJES DE PROGRAMACION DECLARATIVOS
  • La programación declarativa es una forma de
    programación que implica la descripción de un
    problema dado en lugar de proveer una solución
    para dicho problema, dejando la interpretación de
    los pasos específicos para llegar a dicha
    solución a un intérprete no especificado. La
    programación declarativa adopta, por lo tanto, un
    enfoque diferente al de la programación
    imperativa tradicional.

36
CARACTERÍSTICAS DE LOS LENGUAJES DE PROGRAMACIÓN
DECLARATIVOS
  • Los lenguajes declarativos están orientados a
    buscar la solución del problema, sin preocuparse
    por la forma de llegar a ello .
  • Los programas están formados por un conjunto de
    definiciones o ecuaciones, las cuales describen
    lo que debe ser calculado, no en sí la forma de
    hacerlo.
  • Las variables sólo pueden tener asignado un solo
    valor a lo largo de la ejecución del programa, lo
    cual implica que no puede existir asignación
    destructiva.
  • El orden de la ejecución no resulta importante
    debido a que no existen efectos colaterales.
  • Las expresiones o definiciones pueden ser usadas
    como valores y por lo tanto se pueden tratar como
    argumentos de otras definiciones.
  • El control de la ejecución no es responsabilidad
    del programador.

37
DESVENTAJAS DE LA PROGRAMACIÓN DECLARATIVA
  • La principal desventaja de la programación
    declarativa es que no puede resolver cualquier
    problema dado, sino que está restringida al
    subconjunto de problemas para los que el
    intérprete o compilador fue diseñado.

38
VENTAJAS DE LA PROGRAMACIÓN DECLARATIVA
  • Entre las ventajas se destaca que la solución de
    un problema se puede realizar con un nivel de
    abstracción considerablemente alto, sin entrar en
    detalles de implementación irrelevantes, lo que
    hace a las soluciones más fácil de entender por
    las personas. La resolución de problemas
    complejos es resuelta por el intérprete a partir
    de la declaración de las condiciones dadas.

39
EJEMPLOS DE LENGUAJES DECLARATIVOS
  • Algunos lenguajes declarativos que se pueden
    mencionar son
  • PROLOG
  • SQL
  • HTML
  • WSDL (Web Services Description Language)
  • XML Stylesheet Language for Transformation

40
PROGRAMACIÓN LÓGICA
  • La programación lógica, junto con la funcional,
    forma parte de lo que se conoce como programación
    declarativa. En los lenguajes tradicionales, la
    programación consiste en indicar cómo resolver un
    problema mediante sentencias en la programación
    lógica, se trabaja de forma descriptiva,
    estableciendo relaciones entre entidades,
    indicando no cómo, sino qué hacer. Se establece
    entonces que la idea esencial de la programación
    lógica es algoritmos lógica control. Es
    decir, un algoritmo se construye especificando
    conocimiento en un lenguaje formal (lógica de
    primer orden), y el problema se resuelve mediante
    un mecanismo de inferencia (control) que actúa
    sobre aquél.

41
PROGRAMACIÓN FUNCIONAL
  • La programación funcional es un paradigma de
    programación declarativa basado en la utilización
    de funciones matemáticas. El objetivo de la
    programación funcional es conseguir lenguajes
    expresivos y matemáticamente elegantes, en los
    que no sea necesario bajar al nivel de la máquina
    para describir el proceso llevado a cabo por el
    programa.
  • Los programas escritos en un lenguaje funcional
    están constituidos únicamente por definiciones de
    funciones, entendiendo éstas no como subprogramas
    clásicos de un lenguaje imperativo (pues la
    programación funcional es declarativa), sino como
    funciones puramente matemáticas, en las que se
    verifican ciertas propiedades como la
    transparencia referencial (el significado de una
    expresión depende únicamente del significado de
    sus subexpresiones), y por tanto, la carencia
    total de efectos laterales.
  • Existen dos grandes categorías de lenguajes
    funcionales los funcionales puros y los
    híbridos. La diferencia entre ambos estriba en
    que los lenguajes funcionales híbridos son menos
    dogmáticos que los puros, al permitir conceptos
    tomados de los lenguajes imperativos, como las
    secuencias de instrucciones o la asignación de
    variables. En contraste, los lenguajes
    funcionales puros tienen una mayor potencia
    expresiva, conservando a la vez su transparencia
    referencial, algo que no se cumple siempre con un
    lenguaje híbrido.

42
PROGRAMACIÓN ORIENTADA A BASES DE DATOS
  • Las bases de datos son programas que administran
    información y hacen más ordenada la información,
    aparte de hacer la fácil de buscar y por supuesto
    de encontrar.
  • Las bases de datos tienen muchos usos facilitan
    el almacenamiento de grandes cantidades de
    información permiten la recuperación rápida y
    flexible de información, con ellas se puede
    organizar y reorganizar la información, así como
    imprimirla o distribuirla en formas diversas.
  • Es claro que los lenguajes orientados a bases de
    datos son declarativos y no imperativos, pues el
    problema es "qué" se quiere hacer o "qué" se
    necesita buscar y encontrar en la base de datos,
    y no se enfatiza el "cómo".
  • Una base de datos también se puede definir como
    un banco de datos o conjunto de datos que
    pertenecen al mismo contexto, almacenados
    sistemáticamente para su posterior uso. En este
    sentido, una biblioteca puede considerarse una
    base de datos compuesta en su mayoría por
    documentosy textos impresos en papel e indexados
    para su consulta.
Write a Comment
User Comments (0)
About PowerShow.com