1. Lógica de la Programación
Lógica de la Programación
Universidad de Boyacá
Esp. Leonardo Bernal Zamora
2. Clasificación del Software
Clasificación del Software
Sistemas
Operativos
1. Multitarea
2. Multiusuario
3. Multiproceso
4. Línea Comando
5. Interfaz Gráfica
Windows, Unix
Unix
Unix
MS DOS
Windows, Macintosh
Lenguajes de
Programación
1. Bajo Nivel
2. Nivel Medio
3. Alto Nivel
Ensamblador
Visual Basic, C
Aplicación De
Uso General
Aplicación De
Uso Especifico
Desarrollados a
la Medida.
1. Proc. Textos
2. Hoja Cálculo
3. Base datos
4. Presentación
Word
Excel
Acces, SQL server
Power point
1. Antivirus
2. Compresores
3. Diseño. Etc.
Autocad, Corel, Flash,
etc.
Nominas , Inventarios,
etc.
Sistemas de Bancos
3.
4. 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
5. 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.
6. SOFTWARE DE DESARROLLO
Utilizan 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.
7. SOFTWARE DE DESARROLLO
Un 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 lenguaje
Semántica: conjunto de significados de un
lenguaje
8. 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
9. 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
10. 3. Lenguaje de alto nivel
Lenguajes 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
11. 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
12. NIVELES DE LENGUAJES DE
NIVELES DE LENGUAJES DE
PROGRAMACIÓN
PROGRAMACIÓN
Bajo Nivel
Lenguajes declarativos
(4ª. Generación)
Lenguajes de alto nivel
(Compilados o interpretados)
Lenguajes ensambladores
Lenguajes máquina
Alto Nivel
Nivel Medio
15. DIFERENCIA ENTRE LENGUAJES
DECLARATIVOS E IMPERATIVOS
En 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
16. Programación Orientada a Objetos
La 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
17. 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).
18. 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.
19. 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 naturales
Esta 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.
20. 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
procedimientos
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.
21. SELECCIÓN DE UN LENGUAJE DE
SELECCIÓN DE UN LENGUAJE DE
PROGRAMACIÓN
PROGRAMACIÓ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.
22. Atributos de un buen lenguaje de
Atributos de un buen lenguaje de
Programación:
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.
23. Atributos de un buen lenguaje de
Atributos de un buen lenguaje de
Programación:
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.