Clase 1. lógica de la programación

Preview:

Citation preview

Lógica de la ProgramaciónLógica de la ProgramaciónUniversidad de Boyacá

Esp. Leonardo Bernal Zamora

Clasificación del SoftwareClasificación del SoftwareSistemas Operativos

1. Multitarea2. Multiusuario3. Multiproceso4. Línea Comando5. Interfaz Gráfica

Windows, Unix

Unix

Unix

MS DOS

Windows, Macintosh

Lenguajes de Programación

1. Bajo Nivel2. Nivel Medio3. Alto Nivel

Ensamblador

Visual Basic, C

Aplicación De Uso General

Aplicación De Uso Especifico

Desarrollados a la Medida.

1. Proc. Textos2. Hoja Cálculo3. Base datos4. Presentación

Word

Excel

Acces, SQL server

Power point

1. Antivirus2. Compresores3. Diseño. Etc.

Autocad, Corel, Flash, etc.

Nominas , Inventarios, etc.

Sistemas de Bancos

Lenguajes de Programación

Mediante los programas se indica a la computadora qué tarea debe realizar y como efectuarla, pero para ello es preciso introducir estas ordenes en un lenguaje que el sistema pueda entender, para esto necesitamos los lenguajes de programación, que básicamente son los programas usados para crear otros Programas y Sistemas

PROGRAMA“Instrucciones de computación estructuradas y

ordenadas que al ejecutarse hacen que una computadora realice una función particular.”

www.laopinion.com/glossary/p.html

El software o programas de desarrollo se utilizan para crear aplicaciones para resolver problemas científicos, comerciales, administrativos o de cualquier tipo.

Estos programas se denominan lenguajes de programación y están integrados por programas y utilerías que facilitan la construcción para los usuarios del sistema informático.

SOFTWARE DE DESARROLLOUtilizan directamente el lenguaje

nativo de la computadora.Debido a la dificultad para usar

este lenguaje, se inventaron otros lenguajes que permitieron crear programas en cualquier computadora y traducirlos al lenguaje de una máquina en particular.

SOFTWARE DE DESARROLLOUn lenguaje de programación es un

conjunto de símbolos, instrucciones y enunciados que están sujetos a una serie de reglas.

Utilizan un léxico, una sintaxis y una semántica.

Léxico: conjunto de símbolos conocido como vocabulario

Sintaxis: reglas para construir el lenguajeSemántica: conjunto de significados de

un lenguaje

1. Lenguaje máquina (lenguaje de bajo nivel)

Es el que entiende la computadora.Las instrucciones se expresan en

forma binaria.Los programas creados en lenguaje

máquina solo pueden ejecutarse en los procesadores para los que fueron creados.

Categorías de los Lenguajes de Programación

Según su Nivel de Abstracción

2. Lenguaje Ensamblador (lenguaje de nivel medio)

Emplea representación simbólica y utiliza procedimientos mnemotécnicos de funciones matemáticas. Los datos se identifican con nombres y permiten la introducción de comentarios para entender el programa con mayor facilidad y optimiza los recursos del hardware.

Categorías de los Lenguajes de Programación

3. Lenguaje de alto nivelLenguajes más acorde con el lenguaje humano.Utilizan palabras y frases (por lo general en

inglés). Permiten modificar los códigos de los programas

con facilidad.Son independientes de la estructura física de la

computadora, contando con instrucciones de uso frecuente como las funciones matemáticas.

Son lenguajes de programación alejados del lenguaje máquina lo cual necesitan ser traducidos antes de ejecutarse y esta tarea se realiza por medio de los intérpretes o los compiladores:

Categorías de los Lenguajes de Programación

Lenguajes INTÉRPRETES: traducen el programa instrucción por instrucción y este proceso se realiza cada vez que se ejecuta el programa. Permiten al programador realizar correcciones durante el proceso de compilación.

Lenguajes COMPILADORES: funciona en dos etapas: en la primera traducen el programa y en la segunda crean un programa objeto en lenguaje máquina. Indican antes de su ejecución si existen errores para que el programador realice sus correcciones.

Según su Nivel de Ejecución

NIVELES DE LENGUAJES DE NIVELES DE LENGUAJES DE PROGRAMACIÓNPROGRAMACIÓN

Bajo Nivel

Lenguajes declarativos(4ª. Generación)

Lenguajes de alto nivel(Compilados o interpretados)

Lenguajes ensambladores

Lenguajes máquina

Alto Nivel

Nivel Medio

13

Evolución de los Lenguajes de ProgramaciónDeclarativos

Según el paradigma de Programación

14

Evolución de los Lenguajes de ProgramaciónOrientados a Objetos eImperativos o por Procedimientos

DIFERENCIA ENTRE LENGUAJES DECLARATIVOS E IMPERATIVOSEn los lenguajes declarativos las sentencias que se utilizan lo que hacen es describir el problema que se quiere solucionar, pero no las instrucciones necesarias para solucionarlo. Esto último se realizará mediante mecanismos internos de inferencia de información a partir de la descripción realizada. (basado en el razonamiento humano)

Los lenguajes imperativos describen paso a paso un conjunto de instrucciones que deben ejecutarse para variar el estado un programa y hallar la solución, es decir, un algoritmo en el que se describen los pasos necesarios para solucionar un problema.

http://www.monografias.com/trabajos38/tipos-lenguajes-programacion/tipos-lenguajes-programacion2.shtml#difer

Programación Orientada a ObjetosLa idea detrás de la POO, es que un

programa de computador puede ser visto como una colección de unidades individuales, objetos, que actúan unos con otros

Opuesto a la forma de ver tradicional en la cual un programa debe ser visto como una colección de procedimientos o simplemente una lista de instrucciones para el computador

Programación Orientada a Objetos Cada objeto es capaz de recibir

mensajes, procesar datos, y enviar mensajes a otros objetos.

Es la unión de la programación estructurada y procedimental con los tipos de datos abstractos.

Los objetos son entidades que combinan estado (datos) y comportamiento (procedimientos o métodos).

Línea de tiempo histórica de los Línea de tiempo histórica de los lenguajes de programación.lenguajes de programación. Primera Generación: lenguaje de máquina

1940-1950. Consistía en sucesiones de dígitos binarios. Aún en la actualidad, es el único lenguaje interno que entiende la computadora; los programas se escriben en lenguajes de mayor nivel y se traducen a lenguaje de máquina.

- Segunda Generación: lenguajes ensambladores fines 1950. En lugar de usar códigos binarios, las instrucciones se representan con símbolos fáciles de reconocer, conocidos como mnemotécnicos. Aún se utilizan estos lenguajes cuando interesa un nivel máximo de eficiencia en la ejecución o cuando se requieren manipulaciones intrincadas.

Tercera Generación: Años '60. Los lenguajes de esta generación se dividen en tres categorías, según se orienten a: Procedimientos: la forma en la que se programan. Problema: El problema que intentan resolver. Objeto: Como se encarara el objeto a desarrollar. Lenguajes como COBOL, FORTRAN y Basic son los ejemplos de esta generación

Cuarta Generación: Las características generales de los lenguajes de cuarta generación son: Uso de frases y oraciones parecidas al inglés para emitir instrucciones.

Quinta Generación: o Lenguajes naturalesEsta generación incluye la inteligencia artificial y sistemas expertos. En lugar de sólo ejecutar un conjunto de órdenes, el objetivo de estos sistemas es “pensar” y anticipar las necesidades de los usuarios. Estos sistemas se encuentran aún en desarrollo.

Generación

Nombre Particularidad

Primera De máquina Específico para cada microprocesador, uso de código

binario

Segunda

Ensamblador Uso de nemotécnicos que abstraen del lenguaje máquina.

Tercera De procedimiento

s

Lenguajes estructurados con comandos cercanos al lenguaje

común.

Cuarta Orientados a procesos

Programas orientados a problemas específicos.

Quinta Natural Incluye inteligencia artificial y sistemas expertos.

SELECCIÓN DE UN LENGUAJE DE SELECCIÓN DE UN LENGUAJE DE PROGRAMACIÓNPROGRAMACIÓN

El mejor lenguaje de programación para usarse en un programa en particular incluye equilibrar las características funcionales del lenguaje con aspectos como costo, control y complejidad.

Un factor importante que debe considerarse al seleccionar cualquier lenguaje de programación es la cantidad de control directo que se necesita para operar el hardware.

Atributos de un buen Atributos de un buen lenguaje de Programación:lenguaje de Programación:

Claridad, sencillez y unidad (legibilidad): La sintaxis del lenguaje afecta la facilidad con la que un programa se puede escribir, por a prueba, y más tarde entender y modificar.

Ortogonalidad: Capacidad para combinar varias características de un lenguaje en todas las combinaciones posibles, de manera que todas ellas tengan significado.

Naturalidad para la aplicación: La sintaxis del programa debe permitir que la estructura del programa refleje la estructura lógica subyacente

Apoyo para la abstracción: Una parte importante de la tarea del programador es proyectar las abstracciones adecuadas para la solución del problema y luego implementar esas abstracciones empleando las capacidades más primitivas que provee el lenguaje de programación mismo.

Atributos de un buen Atributos de un buen lenguaje de Programación:lenguaje de Programación: Facilidad para verificar programas: La sencillez

de la estructura semántica y sintáctica ayuda a simplificar la verificación de programas.

Entorno de programación: Facilita el trabajo con un lenguaje técnicamente débil en comparación con un lenguaje más fuerte con poco apoyo externo.

Portabilidad de programas

Costo de uso:◦ Costo de ejecución del programa.◦ Costo de traducción de programas.◦ Costo de creación, prueba y uso de programas.◦ Costo de mantenimiento de los programas: costo

total del ciclo de vida.

Bibliografíahttp://deim.urv.cat/~pgarcia/LP/ppt2005/

tema1.ppthttp://159.90.31.172/localwebsite/clases/TI-

2314/Algoritmos_2005/Laboratorio/LenguajeC/Clase1.ppt

www.ingenieriasimple.com/introprogra/clase01.ppt

www.ingenieria.uady.mx/Jpech/SIC2005/Presentaciones/Sic2_2.ppt

http://www.slideshare.net/LILIANA06/historia-de-los-lenguajes-de-programacin

www.rena.edu.ve/cuartaEtapa/Informatica/Tema13.html