Professional Documents
Culture Documents
Proyecto de
Investigación: Los Sistemas de Información como agentes de cambio para la
competitividad organizacional.
PRINCIPIOS DE FORMACIÓN
• Aprender a diferenciar los diferentes paradigmas de programación
UNIDADES ACADÉMICAS
• Unidad 1
Introducción a los Paradigmas de Programación
• Descripción y análisis de temática
Descripción
Existen más de 1000 lenguajes de programación y normalmente uno utiliza 1 o
dos, hasta cuatro quizás. Muchos estudiantes piensan que si no van a utilizar
esos lenguajes, entonces no deberían estudiarlos, pero existen muchas
razones en el mundo del software que justifican la necesidad e importancia de
estudiar, no sólo las características principales de los lenguajes, sino también
el paradigma de programación al cual corresponden y muchos otros conceptos
esenciales e inherentes al desarrollo de software.
Temática
• Conceptos fundamentales de programación
• Reseña histórica de los Lenguajes de Programación
• Influencias en la evolución de los LP
• Atributos de un buen Lenguaje de Programación
• Modelos básicos de Paradigmas de los LP
• Nuevos Paradigmas de Programación
Preguntas generadoras
• ¿Cuál es la diferencia entre un compilador y un intérprete?
• ¿Por qué la capacidad de los computadores influye en la evolución de los
lenguajes de programación?
• ¿Un programa escrito en lenguaje de alto nivel se ejecuta más rápido que
un programa escrito en lenguaje de bajo nivel?
• ¿En qué consiste la arquitectura de Von Neumann?
• ¿Qué constituye el entorno de programación?
• ¿En cuál paradigma los lenguajes de programación están orientados al
“qué” y no al “cómo”?.
• ¿Por qué es importante la portabilidad de un lenguaje de programación?
Acreditación de la Unidad
Dominar los conceptos fundamentales de programación.
• Unidad 2
Programación Imperativa o Procedural
• Descripción y análisis de temática
Descripción
Es el paradigma clásico o tradicional. En el paradigma imperativo, un programa
es visto como una lista de instrucciones o comandos. Los programas
imperativos o procedurales, explícitamente o implícitamente, asumen el
computador basado en la arquitectura de Von Neumann.
Temática
• Características del paradigma imperativo
• Lenguaje C
• Tipos de datos
• Estructuras de control
• Procesos iterativos
• Definición de funciones
• Estructuras de datos
Preguntas generadoras
• ¿Cuáles son los tipos de datos básicos en programación? ¿Existen
restricciones al declarar variables y/o constantes? ¿En qué se diferencian
estos identificadores?
• ¿Cuáles son los operadores matemáticos, relacionales y lógicos? ¿Existe
alguna jerarquía entre estos operadores?
• ¿Cómo añadir comentarios a un programa y para qué sirven?
• ¿Para qué sirve una instrucción de asignación? ¿Cuáles son las
instrucciones de entrada/salida?
• ¿Qué son las estructuras de selección y para qué se utilizan?
• ¿Para qué sirven los contadores y acumuladores en programación?
• ¿Cómo devuelve valores una función? ¿cuántos valores puede retornar una
función?
Acreditación de la Unidad
Comprender las principales características del paradigma de programación
imperativa.
• Unidad 3
Programación Funcional
• Descripción y análisis de temática
Descripción
Un punto de vista alternativo de la computación representado por un lenguaje
de programación consiste en examinar la función que el programa representa,
y no sólo los cambios de estado conforme el programa se ejecuta, enunciado
por enunciado.
Temática
• Características del paradigma Funcional
• Imperativo Vs Funcional
• Lenguaje Scheme
• Tipos de datos
• Sintaxis
• Definición de procedimientos
• Estructuras de control
• Procedimientos recursivos
• Listas
Preguntas generadoras
• ¿Qué significa la notación posfija en programación Funcional?
• ¿Cómo se realiza el control de un programa a través de recursión?
• ¿Se utiliza la instrucción de asignación en un programa Funcional?
• ¿En qué consiste el Lexical Scoping del lenguaje Scheme?
• ¿Qué tipo de aplicaciones se desarrollan con el paradigma de
programación Funcional?
Acreditación de la Unidad
Comprender las principales características del paradigma de programación
Funcional.
• Unidad 4
Programación Orientada a Objetos
• Descripción y análisis de temática
Descripción
La programación Orientada a Objetos es un paradigma muy importante en el
desarrollo de software contemporáneo. En la programación Orientada a
Objetos, las estructuras de datos y los algoritmos se integran en bloques o
unidades llamadas Clases.
Temática
• Características de la Programación Orientada a Objetos
• Clases y Objetos
• Herencia
• Polimorfismo
• Lenguaje Java
• Tipos de datos
• Creación de Objetos
• Constructores
• Applets
Preguntas generadoras
• ¿Cuál es la diferencia entre una Clase y un Objeto?
• ¿En qué consiste el encapsulamiento?
• ¿Cómo se comunican los Objetos?
• ¿Cómo se accede a los atributos de una Clase?
• ¿Qué es una Clase Base y qué características debe tener una Clase para
ser considerada así?
• ¿A qué se le llama variables de instancia?
• ¿Toda Clase definida en Java debe ser una extensión de otra Clase?
• ¿La sobrecarga es una clase de Polimorfismo?
Acreditación de la Unidad
Comprender las principales características del paradigma de Programación
Orientada a Objetos.
• Unidad 5
Programación Lógica
• Descripción y análisis de temática
Descripción
La programación Lógica, la otra variedad de la programación declarativa, usa
como base sentencias de la lógica de primer orden, en concreto las cláusulas
de Horn (restricción del Cálculo de Predicados de Primer Orden) y su forma de
ejecución es el principio de Resolución de Robinson.
Temática
• Características de la Programación Lógica
• Lenguaje Prolog
• Hechos y Reglas
• Preguntas (Queries)
• Cláusulas de Horn
• Cláusulas de Horn y Prolog
• Listas
Preguntas generadoras
• ¿En qué consiste un motor de inferencia?
• ¿El lenguaje natural es muy diferente del Cálculo de predicados?
• ¿Qué es una pregunta en Prolog?
• ¿Cuál es la estructura de una cláusula de Horn?
• ¿Qué tipo de aplicaciones se desarrollan con el paradigma de
programación Lógica?
Acreditación de la Unidad
Comprender las principales características del paradigma de Programación
Lógica.
Enlaces de interés:
• www.frsf.utn.edu.ar/universidad_virtual/catedras/sistemas/paradigmas/
• www.elrincondelc.com
• www.programadores.net
• www.c.conclase.net
• www.programacion.com
• www.lawebdelprogramador.com
• www.toptutoriales.com
• http://www.java.sun.com/docs/books/tutorial/
• www.abcdatos.com/tutoriales/programacion/prolog.html
• www.mundotutoriales.com/ tutoriales_prolog-mdpal15249.htm
• es.wikipedia.org/wiki/Programación_funcional
• es.wikipedia.org/wiki/Écheme
• webdia.cem.itesm.mx/ac/rtrejo/Scheme/karina/
• www.geocities.com/v.iniestra/apuntes/pro_log/
• www.lania.mx/biblioteca/newsletters/ 1996-primavera-verano/art4.html
• www.solocursos.net/lisp-slckey14587.htm
http://www.cui.edu.co/~gmartin