La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

LENGUAJE DE PROGRAMACION sistema de escritura para la descripción precisa de algoritmos o programas informáticos. sistema de escritura para la descripción.

Presentaciones similares


Presentación del tema: "LENGUAJE DE PROGRAMACION sistema de escritura para la descripción precisa de algoritmos o programas informáticos. sistema de escritura para la descripción."— Transcripción de la presentación:

1

2 LENGUAJE DE PROGRAMACION sistema de escritura para la descripción precisa de algoritmos o programas informáticos. 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.. 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. 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. 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. 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. 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. 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. La maq analitica no se construyo. En1823 el gob britanico apoyo para crear la maq de diferencias: dispositivo mecanico para efectuar sumas. 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. Babagge abandona el proyecto y se dedica a la maquina analitica que contaba de 5 unidades basicas: 1) Unidad de entrada. 2) Memoria. 2) Memoria.Memoria 3) Unidad de control. 3) Unidad de control.control 4) Unidad Aritmético-Lógica. 4) Unidad Aritmético-Lógica.Lógica 5) Unidad de salida. 5) Unidad de salida. BABAGGE PADRE DE LA INFORMATICA NO REALIZO SUS INVENTOS POR FALTA DE LA ELECTRONICA. BABAGGE PADRE DE LA INFORMATICA NO REALIZO SUS INVENTOS POR FALTA DE LA ELECTRONICA.

4

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. 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. 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 Las instrucciones en lenguaje máquina dependen del hardware de la computadora y, por tanto, diferirán de una computadora a otra. otra.

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

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

9 LENGUAJE ENSAMBLADOR Lenguaje de programación que posee una gramatica y estructura. 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. 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 No puede ser ejecutado directamente en la computadora, sino que requiere de una traducción a lenguaje de máquina. traducción a lenguaje de máquina. El traductor de programas se llama El traductor de programas se llama emsamblador. emsamblador. Existen dos tipos ensambladores básicos y ensambladores modulares, o macro Existen dos tipos ensambladores básicos y ensambladores modulares, o macro ensambladores. 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. 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 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. 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. 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.. 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. 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. 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 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 Es independiente de un hardware determinado Utiliza palabras del lenguaje humano (por lo general el inglés) 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 Expresa los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las de a la capacidad ejecutora de las máquinas. máquinas.

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

19 Diseno de algoritmo Programa en un papel Programa en un archivo en el disco duro Introduccion Modificacion Editor de texto Almacenamiento Recuperacion

20 No entiende Lenguaje de Alto Nivel Lenguaje: maquina comprenda Compilador traducido

21 Lenguaje de Alto Nivel DIFERENTE COMPILADOR Lenguaje de Bajo Nivel Compilador del programa DESVENTAJA

22 P R O G R A M A Alto nivel Introduce escrito Maquina (editor) Codigo fuente COMPILADOR Lenguaje maquina Almacena resultado archivo Codigo objeto llamado traduce llama

23 INICIO Prog.fuente Compilar prog. ERRORES programa Prog. ejecutable ejecucion enlazador modificacion

24 PROGRAMA FUENTE traduce Ejecuta BASIC Prog clasicos Practicamente no utiliza Q. BASIC Computadoras personales RENACER JAVA aparicion

25

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. 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. 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. 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. 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. 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. 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. 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. 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. 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 d d d d d aaaa tttt oooo ssss y pppp rrrr oooo gggg rrrr aaaa mmmm aaaa ssss que poseen e e e e e ssss tttt rrrr uuuu cccc tttt uuuu rrrr aaaa 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). 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). interacciónla comunicacióncambio interacciónla comunicacióncambio Algunos lenguajes de POO: Ada, Delphi, C++,Ruby, etc. Algunos lenguajes de POO: Ada, Delphi, C++,Ruby, etc.

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. 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. 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. 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.PascalObject Pascal Object Pascal 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 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. programacióndescripcióninterpretaciónprogramacióndescripcióninterpretación

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 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. 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.ecuaciones 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. 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.variables El orden de la ejecución no resulta importante debido a que no existen efectos colaterales. 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. Las expresiones o definiciones pueden ser usadas como valores y por lo tanto se pueden tratar como argumentos de otras definiciones. valores El control de la ejecución no es responsabilidad del programador. El control de la ejecución no es responsabilidad del programador.responsabilidad

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. 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. soluciones

39 EJEMPLOS DE LENGUAJES DECLARATIVOS Algunos lenguajes declarativos que se pueden mencionar son: PROLOG PROLOG SQL SQL HTML HTML WSDL (Web Services Description Language) WSDL (Web Services Description Language)Web XML Stylesheet Language for Transformation 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. 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.conocimiento

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. 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.paradigmamatemáticas objetivoparadigmamatemáticas objetivo 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. 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. 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.potencia

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 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.información 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. 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". 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".base de datosbase de datos 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. 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.bibliotecadocumentosbibliotecadocumentos


Descargar ppt "LENGUAJE DE PROGRAMACION sistema de escritura para la descripción precisa de algoritmos o programas informáticos. sistema de escritura para la descripción."

Presentaciones similares


Anuncios Google