24
Lógica de la Lógica de la Programación Programación Universidad de Boyacá Esp. Leonardo Bernal Zamora

Clase 1. lógica de la programación

Embed Size (px)

Citation preview

Page 1: Clase 1. lógica de la programación

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

Esp. Leonardo Bernal Zamora

Page 2: Clase 1. lógica de la programación

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

Page 3: Clase 1. lógica de la programación
Page 4: Clase 1. lógica de la programación

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

Page 5: Clase 1. lógica de la programación

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.

Page 6: Clase 1. lógica de la programación

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.

Page 7: Clase 1. lógica de la programación

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

Page 8: Clase 1. lógica de la programación

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

Page 9: Clase 1. lógica de la programació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

Page 10: Clase 1. lógica de la 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

Page 11: Clase 1. lógica de la 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

Page 12: Clase 1. lógica de la programació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

Page 13: Clase 1. lógica de la programación

13

Evolución de los Lenguajes de ProgramaciónDeclarativos

Según el paradigma de Programación

Page 14: Clase 1. lógica de la programación

14

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

Page 15: Clase 1. lógica de la programación

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

Page 16: Clase 1. lógica de la programación

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

Page 17: Clase 1. lógica de la programación

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

Page 18: Clase 1. lógica de la programación

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.

Page 19: Clase 1. lógica de la programación

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.

Page 20: Clase 1. lógica de la programación

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.

Page 21: Clase 1. lógica de la programación

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.

Page 22: Clase 1. lógica de la programación

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.

Page 23: Clase 1. lógica de la programación

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.

Page 24: Clase 1. lógica de la programación

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