Universidad Tecnológica Nacional Facultad Regional San ... filePlan: 2008 ... destrezas que...

27
Universidad Tecnológica Nacional Facultad Regional San Francisco Ingeniería en Sistemas de Información Paradigmas de programación PLANIFICACIÓN CICLO LECTIVO 2010

Transcript of Universidad Tecnológica Nacional Facultad Regional San ... filePlan: 2008 ... destrezas que...

Universidad Tecnológica Nacional Facultad Regional

San Francisco

Ingeniería en Sistemas de Información

Paradigmas de programación

PLANIFICACIÓN CICLO LECTIVO 2010

ÍNDICE

ÍNDICE ......................................................................................................................................... 2

PROFESIONAL DOCENTE A CARGO ................................................................................... 3

UBICACIÓN ................................................................................................................................. 4

OBJETIVOS ................................................................................................................................. 5

ORGANIZACIÓN DE CONTENIDOS ..................................................................................... 7

PROGRAMA ANALÍTICO ...................................................................................................... 10

CRITERIOS DE EVALUACIÓN ............................................................................................. 12 EVALUACIÓN : ........................................................................................................................... 12 AUTOEVALUACIÓN: .................................................................................................................. 12

PLAN DE TRABAJO ................................................................................................................ 13

METODOLOGÍA ...................................................................................................................... 17

BIBLIOGRAFÍA ........................................................................................................................ 20

ARTICULACIÓN ...................................................................................................................... 22 ARTICULACIÓN CON EL ÁREA: ................................................................................................. 22 TEMAS RELACIONADOS CON MATERIAS DEL ÁREA: .................................................................. 23 ARTICULACIÓN CON EL NIVEL: ................................................................................................ 24 TEMAS RELACIONADOS CON MATERIAS DEL NIVEL: ................................................................. 24 ARTICULACIÓN CON LAS CORRELATIVAS: ................................................................................ 25 TEMAS RELACIONADOS CON LAS CORRELATIVAS: .................................................................... 25

ORIENTACIÓN ......................................................................................................................... 26 DEL ÁREA: ............................................................................................................................... 26 DE LA ASIGNATURA: ................................................................................................................ 26

ESTRUCTURACIÓN DE TIEMPOS ...................................................................................... 27

PROFESIONAL DOCENTE A CARGO

Docente Categoría Título Profesional

José Oscar Mugetti Mare Profesor Adjunto Ordinario

Esp. En Docencia Universitaria Ingeniero en Sistemas de Información

UBICACIÓN

Dentro del contexto curricular prescripto se ubica en:

Carrera: Ingeniería en Sistemas de Información Plan: 2008

Orientación: Ingeniería de Software Área: Programación Nivel: Segundo

Carga Horaria Semanal: 8 horas Régimen: cuatrimestral

Distribución horaria Formación

Total de

horas

Teórica – 108 hs Práctica – 20 hs

Teoría Práctica Laboratorio Formación experimental

Resolución de

problemas de

Ingeniería

Proyecto y

diseño

Práctica profesional supervisada

20 108 20 128

OBJETIVOS

Llamamos competencia a conjuntos complejos de habilidades y destrezas que posibiliten la acción de un amplio espectro de situaciones, como puede apreciarse la noción de competencia no implica solo la posesión de un conocimiento

¿Cómo se adquieren las competencias? Actuando, usando herramientas de los diferentes paradigmas,

mejorando procedimientos, probando soluciones alternativas, etc.. Las competencias son capacidades agregadas y complejas que

permiten el desempeño en diferentes ámbitos y que funciona como un dispositivo en permanente revisión crítica y recreación.

Una persona competente, al nivel de formación básica en paradigmas de programación, debería poseer algunas de las capacidades, habilidades y actitudes propias de un profesional seriamente formado.

Los objetivos que se pretenden alcanzar con el desarrollo del programa en Paradigmas de Programación son fundamentalmente:

- Comprender los fundamentos de los paradigmas de programación básicos que son utilizados por los lenguajes de programación actuales.

- Conocer el modelo formal o semiformal subyacente de cada paradigma y la forma en que el mismo es incorporado en un lenguaje de programación concreto.

- Aplicar los diferentes paradigmas en la resolución de problemas.

En lo referente al paradigma funcional , el alumno deberá: a) Manejar los principios básicos del cálculo lambda b) Comprender el diseño funcional de programas y que el problema a

tratar es caracterizarlo como una función entre conjuntos a ser definida. Para el logro de tales conceptos se eligió el lenguaje SCHEME (dialecto de LISP) que soporta el paradigma.

c) Capacidad para utilizar los conceptos para el diseño de programas sencillos.

El paradigma lógico , el alumno deberá: a) Conocer la fundamentación teórica en que se basa el mismo, y

cuales son sus aspectos formales y esencialmente el mecanismo de inferencia y los conceptos de lógica matemática utilizados (axiomas, derivación sintáctica, cláusulas de Horn, programas lógicos, etc.).

b) Capacidad para diseñar programas en TURBO PROLOG de poca complejidad, pero la suficiente como las lograr internalizar el concepto del paradigma.

En cuanto al paradigma basado en orientación a objetos :

a) Conocer los conceptos que le dieron origen y que no se encuentran en otros paradigmas.

b) Modelar el problema utilizando los conceptos de herencia, polimorfismo, clase, instancia, objetos compuestos, mensaje, etc. Es necesario que el alumno implemente y utilice estos conceptos en un lenguaje que utilice el paradigma, para ello se introduce el uso de un lenguaje de uso masivo como JAVA

Teniendo en cuenta lo particular de cada paradigma se tendrán como

expectativas de logros : a) Reflexionar, recrear y aprender. b) Construir y reconstruir esquemas y procesos. c) Utilizar diferentes instrumentos y medios para la concreción de las

necesidades planteadas, a partir de los paradigmas propuestos. d) Asimilar las convenciones y principios que rigen cada uno de los

paradigmas. e) Decidir teniendo en cuenta las posibilidades y limitaciones de las situaciones

particulares. f) Inserción en la vida profesional. g) Flexibilidad y predisposición para planificar el desarrollo del trabajo. h) Persistencia ante las dificultades. i) Disposición favorable al trabajo en equipo y particularmente al trabajo

interdisciplinario. j) Actitud crítica ante diferentes tipos de soluciones. k) Autonomía para resolver situaciones complejas, de manera ordenada y

metódica. l) Expresar y comunicar sus ideas, utilizando la terminología adecuada. m) Reflexionar sobre lo resuelto. n) Fundamentar criterios personales. o) Asumir positivamente logros y fracasos.

ORGANIZACIÓN DE CONTENIDOS

Unidad Temática nº 1: Introducción

Contenidos conceptuales - Introducción a los paradigmas de programación. - Ventajas, deficiencias, y comparación entre los diferentes paradigmas.

Contenidos procedimentales - Identificación de problemas en los diferentes paradigmas

Contenidos actitudinales - Despertar la inquietud de que existen diferentes aspectos conceptuales,

vinculados a la resolución de problemas con programas de computación.

Unidad Temática nº 2: Paradigma funcional Contenidos conceptuales

- Lenguajes Funcionales. - Especificación de algoritmos funcionales. - Funciones, problemas y diseño modular.

Contenidos procedimentales - Análisis de un caso de estudio.

- Análisis dimensional de fórmulas. - Desarrollo del diseño. - Programación en Scheme. Contenidos actitudinales - Introducir algunas características de la programación funcional y a las

técnicas de diseño modular. - Caracterizar el problema como una función entre conjuntos a ser

definida. - Entender el concepto de "orden superior", que autoriza a realizar

abstracciones sobre funciones, es decir a que éstas sean representadas por variables que son argumentos de otras funciones.

Unidad Temática nº 3: El cálculo lambda

Contenidos conceptuales - Introducción. - Reglas del cálculo lambda. - Reducciones (redex)

Contenidos procedimentales - Ejercitación identificando los términos que están bien formados con el

cálculo lambda. - Identificación de las variables libres. - Reducciones. - Aplicación del cálculo lambda en las relaciones entre los números

naturales. - Aplicación y transferencia del cálculo lambda a la programación en

Scheme.

Contenidos actitudinales - Predisponer un interés de establecer una teoría general de las

funciones y entenderla de modo de proveer fundamentos para la lógica y la matemática.

- Usarlo como fundamento conceptual de los lenguajes de programación, y en especial al paradigma funcional, al cual aporta: - Una sintaxis de base. - Una semántica para el concepto de función como procesos de

transformación de argumentos en resultados. - Los medios para definir primitivas de programación.

Unidad Temática nº 4: Paradigma lógico

Contenidos conceptuales - Introducción a la programación en lógica. - Sintaxis y semántica de la programación lógica.

Contenidos procedimentales - Programas lógicos, ejercitación. - Utilización del programa Turbo Prolog para la resolución de

situaciones reales en práctica de laboratorio. Contenidos actitudinales - Interpretar los conceptos del paradigma, la cual permite definir el

problema estableciendo relaciones sobre ciertos dominios dados. - Sustentar la idea de que un programa puede ser descripto definiendo

ciertas relaciones entre conjuntos de objetos, a partir de las cuales otras pueden ser calculadas empleando deducción.

- Internalizar el concepto de que la programación consiste en describir el problema en sí mismo, ocupándose de qué y no del como.

Unidad Temática nº 5: Paradigma orientado a objetos

Contenidos conceptuales - Introducción, evolución y reseña histórica, conceptos básicos. - Objetos - Concepto de objeto compuesto, relaciones entre objetos, ensamble.

Contenidos procedimentales - Programación orientada a objetos, ejercitación en laboratorio con Java - Análisis de casos y su resolución en laboratorio, utilizando lenguajes con

programación orientada a objetos en lenguaje JAVA Contenidos actitudinales

- Comprender que los nuevos paradigmas, como TOO vienen a cubrir un espacio que se fue generando a medida que creció la complejidad de los sistemas y su necesidad de adaptarse rápidamente a los cambios.

- Hacer que el alumno entienda que en vez de pensar en los procesos y su descomposición, se piense en los objetos y su comportamiento.

- Que los eventos que ocurren en un sistema son cambios de estados de los objetos

- Las técnicas de OO se pueden utilizar como medio para el diseño sencillo de sistemas complejos.

Unidad Temática nº 6: Ciclo de desarrollo TOO

Contenidos conceptuales - Ciclo de desarrollo antecedentes y comparaciones. - Impacto de la TOO.

Contenidos procedimentales - Análisis de casos y su resolución utilizando distintas metodología y su

diferencia con la TOO. Contenidos actitudinales - Lograr que el alumno adopte una actitud crítica ante diferentes tipos

de soluciones. - Comprenda que la TOO le provee una adaptabilidad y mantenibilidad

difícil de lograr con otras metodologías.

PROGRAMA ANALÍTICO

Contenidos:

UNIDAD 1:

- Introducción a los paradigmas de programación. - Ventajas, deficiencias, y comparación entre los diferentes paradigmas. - Análisis de soluciones entre los diferentes paradigmas

UNIDAD 2:

- Lenguajes Funcionales. - Estructura de los lenguajes funcionales y su importancia.

- Especificación de algoritmos funcionales. - Identificadores - Especificación con condiciones - Especificación funcional operacional. - Sub expresiones, condicional, recursividad, clases de recursividad,

notación. - Funciones, problemas y diseño modular.

UNIDAD 3:

- Introducción. - Reglas del cálculo lambda.

- Igualdad en cálculos lambda puros. - Variables libres y acotadas. - Sustitución. - Axiomas y reglas de igualdad beta.

- Reducciones (redex) - Introducción. - Reglas de cálculo. - Forma normal.

UNIDAD 4:

- Introducción a la programación en lógica. - Interpretación lógica.

- Sintaxis y semántica de la programación lógica. - Lógica de predicados de primer orden y formas restringidas. - Lenguaje de programación lógica. - Extensiones al modelo básico de objeto en un lenguaje particular. - Términos, Predicados, Fórmula, Regla o sentencia. - Conectivos y Cuantificadores. - Interpretación, satisfacción lógica, consecuencia lógica o deducción. - Inferencia lógica, regla básica de inferencia, consistencia y completitud. - Cláusulas de Horn.

UNIDAD 5:

- Introducción, evolución y reseña histórica, conceptos básicos. - Objetos

- abstracción de datos, ocultamiento de la información. - Estado, comportamiento, identidad. - Clases, métodos, mensajes, herencia y polimorfismo.

- Concepto de objeto compuesto, relaciones entre objetos, ensamble. - Introducción a la teoría de Objetos - Fundamentos de Java - Clases y POO - Clases y Objetos, creación e intanciación - Abstracción y Encapsulamientos de datos - Herencia y Extensión de clases - AWT - Introducción a JSP

UNIDAD 6:

- Ciclo de desarrollo antecedente y comparaciones. - Enfoque tradicional y modelo de cascada. - Modelo iterativo. - Modelo oportunístico. - Modelo incremental.

- Impacto de la TOO. - Objetivos, ventajas, problemas, características y herramientas. - Comprenda que la TOO le provee una adaptabilidad y mantenibilidad

difícil de lograr con otras metodologías.

CRITERIOS DE EVALUACIÓN

Evaluación:

SeguSeguSeguSeguimientoimientoimientoimiento----EvaluaciónEvaluaciónEvaluaciónEvaluación----Promoción Promoción Promoción Promoción ---- Regularidad: Regularidad: Regularidad: Regularidad: Se realizará al alumno un seguimiento personalizado que permitirá la

evaluación continua del mismo, en cuanto a: a) Interés por la materia. b) Integración con grupos de trabajo. c) Responsabilidad y compromiso de trabajo. d) Participación activa en las clases, tanto teórica como práctica. e) Logros de todos y cada unos de los contenidos que hacen a las competencias

que se persigue con el dictado de la materia.

Esta evaluación continua será realizada siguiendo el siguiente criterio: a) Seguimiento b) Comprensión

♦ Comprensión de procesos. ♦ Comprensión de conocimientos.

c) Mejora ♦ Evaluar la evaluación. ♦ Mejorar los métodos. ♦ Mejorar el aprendizaje.

En lo referente a evaluación final, se propone la realización tres (3)

evaluaciones parciales, (una por cada uno de los paradigmas) de carácter teórico práctico y serán realizadas al finalizar el estudio de cada uno de los paradigmas, incluyendo la última evaluación de integración.

La aprobación del mismo requerirá que los alumnos respondan correctamente por lo menos el 40% de la evaluación.

La condición de alumno regular será alcanzada con la aprobación de los tres parciales, alcanzar la asistencia mínima exigida y realizada los trabajos prácticos encomendados.

• Rendir un examen final en las fechas correspondientes a los llamados a exámenes finales, que abarcará la totalidad de los temas de la asignatura y se tendrá en cuenta su condición de regular.

Autoevaluación: Será realizada utilizando el instrumento elaborado desde Secretaría

Académica y aprobado por Consejo Académico.

Ingeniería en Sistemas de Información Paradigmas de programación

Página 13 de 27

PLAN DE TRABAJO

Eje temático Nº 1: : Introducción

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

1

• Introducción a los paradigmas de programación.

• Ventajas, deficiencias, y comparación entre los diferentes paradigmas.

.

metodología. Lección magistral; .Interrogación; Aula taller: Análisis de casos Técnica de resolución de problemas Técnicas de grupo

A) Seguimiento B) Comprensión

de procesos C) Comprensión

de conocimientos

D) Mejorar la evaluación

E) Mejorar los métodos

F) Mejorar el aprendizaje

a)Apendizaje significativo de contenidos a) Interrelación e

interactividad. b) Proceso de

pensamiento c) Ejercitación

1 a 14 y 25 a 27

Eje temático Nº 2: Paradigma funcional

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

2, 3,4, 5

- Lenguajes Funcionales. - Estructura de los

lenguajes funcionales y su importancia.

- Especificación de algoritmos funcionales. - Identificadores - Especificación

con condiciones - Especificación

funcional operacional.

- Sub expresiones, condicional, recursividad, clases de recursividad, notación.

- Funciones, problemas y diseño modular.

metodología. Lección magistral; .Interrogación; Aula taller: Análisis de casos Técnica de resolución de problemas Técnicas de grupo

A) Seguimiento B) Comprensión

de procesos C) Comprensión

de conocimientos

D) Mejorar la evaluación

E) Mejorar los métodos

F) Mejorar el aprendizaje

a)Apendizaje significativo de contenidos d) Interrelación e

interactividad. e) Proceso de

pensamiento Ejercitación

1 a 6, 8 y 14

Eje temático Nº 3: El cálculo lambda

Ingeniería en Sistemas de Información Paradigmas de programación

Página 14 de 27

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

6, 7

- Introducción. - Reglas del cálculo

lambda. - Igualdad en

cálculos lambda puros.

- Variables libres y acotadas.

- Sustitución. - Axiomas y reglas

de igualdad beta.

- Reducciones (redex) - Introducción. - Reglas de

cálculo. - Forma normal.

metodología. Lección magistral; .Interrogación; Aula taller: Análisis de casos Técnica de resolución de problemas Técnicas de grupo

A) Seguimiento B) Comprensión

de procesos C) Comprensión

de conocimientos

D) Mejorar la evaluación

E) Mejorar los métodos

F) Mejorar el aprendizaje

a)Apendizaje significativo de contenidos f) Interrelación e

interactividad. g) Proceso de

pensamiento Ejercitación

1 a 6, 8 y 14

Eje temático Nº 4: Paradigma lógico

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

8 y 9

- Introducción a la programación en lógica. - Interpretación

lógica. - Sintaxis y semántica

de la programación lógica.

- Lógica de predicados de primer orden y formas restringidas.

- Lenguaje de programación lógica.

- Extensiones al modelo básico de objeto en un lenguaje particular. - Términos,

Predicados, Fórmula, Regla o sentencia.

- Conectivos y Cuantificadores.

metodología. Lección magistral; .Interrogación; Aula taller: Análisis de casos Técnica de resolución de problemas Técnicas de grupo

A) Seguimiento B) Comprensión

de procesos C) Comprensión

de conocimientos

D) Mejorar la evaluación

E) Mejorar los métodos

F) Mejorar el aprendizaje

a)Apendizaje significativo de contenidos h) Interrelación e

interactividad. i) Proceso de

pensamiento Ejercitación

1 a 6 y 15

Ingeniería en Sistemas de Información Paradigmas de programación

Página 15 de 27

Eje temático Nº 4: Paradigma lógico

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

- Interpretación, satisfacción lógica, consecuencia lógica o deducción.

- Inferencia lógica, regla básica de inferencia, consistencia y completitud.

- Cláusulas de Horn.

Eje temático Nº 5: Paradigma orientado a objetos

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

10, 11, 12, 13 y 14

- Introducción, evolución y reseña histórica, conceptos básicos.

- Objetos - abstracción de

datos, ocultamiento de la información.

- Estado, comportamiento, identidad.

- Clases, métodos, mensajes, herencia y polimorfismo.

- Concepto de objeto compuesto, relaciones entre objetos, ensamble.

metodología. Lección magistral; .Interrogación; Aula taller: Análisis de casos Técnica de resolución de problemas Técnicas de grupo

A) Seguimiento B) Comprensión

de procesos C) Comprensión

de conocimientos

D) Mejorar la evaluación

E) Mejorar los métodos

F) Mejorar el aprendizaje

a)Apendizaje significativo de contenidos j) Interrelación e

interactividad. k) Proceso de

pensamiento Ejercitación

7, 9, 10, 11, 12, 13, 24, 25, 26, y 27

Eje temático Nº 6: Ciclo de desarrollo TOO

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

15 y 16

- Ciclo de desarrollo antecedentes y comparaciones.

metodología. Lección magistral; .Interrogación;

A) Seguimiento B) Comprensión

de procesos C) Comprensión

a)Apendizaje significativo de contenidos l) Interrelación e

7, 9, 10, 11, 12, 13, 24, 25, 26, y 27

Ingeniería en Sistemas de Información Paradigmas de programación

Página 16 de 27

Eje temático Nº 6: Ciclo de desarrollo TOO

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

- Enfoque tradicional y modelo de cascada.

- Modelo iterativo. - Modelo

oportunístico. - Modelo

incremental. - Impacto de la TOO.

- Objetivos, ventajas, problemas, características y herramientas.

diferentes formas

Aula taller: Análisis de casos Técnica de resolución de problemas Técnicas de grupo

de conocimientos

D) Mejorar la evaluación

E) Mejorar los métodos

F) Mejorar el aprendizaje

interactividad. m) Proceso de

pensamiento Ejercitación

Ingeniería en Sistemas de Información Paradigmas de programación

Página 17 de 27

METODOLOGÍA

Metodología de Desarrollo:

a) clases en el aula y en el laboratorio:

• teoría

Duración: 3 horas semanales a cargo del profesor.

Tendrán el carácter de Teórica- Prácticas.

En las mismas se impartirán los conocimientos claves del contenido de la materia, presentando y evaluando conceptos y terminología de los distintos paradigmas través de un enfoque comparativo.

Se ejemplificarán los conceptos en los diferentes paradigmas utilizando lenguajes que soporten los distintos paradigmas por ejemplo Scheme para funcional, Turbo Prolog para el lógico y Java en el Orientado a Objetos.

• prácticaprácticaprácticapráctica

Duración: 5 horas semanales a cargo del profesor y auxiliar asignados al curso.

En las mismas se impartirán guías de ejercicios. Se analizarán y discutirán las soluciones de los principales ejercicios y problemas.

- Resolución de problemas de ingeniería Ambito de realización: En el Laboratorio de Informática Actividades a desarrollar: Resolución de casos de estudio en los diferentes paradigmas de programación estudiados. Implementación de programas en Smalltalk, Prolog y Scheme Tiempo (carga horaria, período que abarca): 18 horas, durante todo el cursado

• en laboratorioen laboratorioen laboratorioen laboratorio

Las horas de clases guiadas en el laboratorio, se incluyen dentro de las horas correspondientes a las clases prácticas y estarán a cargo del profesor y auxiliar asignados al curso. Codificarán programas elementales en diferentes paradigmas, teniendo en cuenta la disponibilidad de compiladores en el Laboratorio.

Trabajos Prácticos:Trabajos Prácticos:Trabajos Prácticos:Trabajos Prácticos:

Realizar, y entregar los trabajos prácticos asignados.

Ingeniería en Sistemas de Información Paradigmas de programación

Página 18 de 27

PRINCIPIOS METODOLÓGICOS:

a) Conocimientos previos: se evaluará por medios de cuestionarios los conceptos previos que el alumno trae desde el cursado de materias anteriores para establecer un parámetro de iniciación que permita que el alumno pueda asociar los nuevos conceptos e incorporarlos a su estructura cognitiva.

b) Aprendizaje significativo de contenidos: ♦ lección magistral para introducir abundante información en poco tiempo ♦ Se introducirá la investigación de los nuevos paradigmas ♦ La resolución de problemas concretos en prácticas de laboratorio.

c) Interrelación e interactividad: ♦ Alumno - alumno = interrelación. ♦ Alumno - máquina = interactividad Así la interactividad permitirá la mejor interrelación humana y los conceptos vertidos de la manera anterior serán profundizados por los alumnos en técnicas grupales de actividades en trabajos prácticos, que serán intensivos y de diferentes naturaleza, que permitan agudizar el ingenio y desarrollar las competencias anteriormente descriptas. Estas técnicas serán realizadas en el aula y en el laboratorio. El aula taller y el seminario serán también ampliamente utilizados a los efectos de que los participantes asuman la responsabilidad de trabajo conjunto, ya sea para su propio aprendizaje o a la resolución de problemas planteados.

d) Proceso de pensamiento: Tanto las clase teóricas, como la investigación y el trabajo práctico en laboratorio serán orientados a que el alumno construya un proceso de pensamiento para que luego internalice los conceptos llegando a ser así un aprendizaje significativo.

HERRAMIENTAS:

a) Lección magistral: para introducir información sobre todo conceptuales y

proporcionar las claves de interpretación de los diferentes paradigmas. b) Interrogación: Se utilizarán técnicas de interrogación y pruebas objetivas,

sobre todo para establecer los conocimientos previos. c) El aula taller y el seminario serán ampliamente utilizados a los efectos de

que los participantes asuman la responsabilidad de trabajo conjunto, ya sea para su propio aprendizaje o para la resolución de problemas planteados.

Dentro del aula taller podrán ser utilizadas las siguientes técnicas entre otras: ♦ Análisis de casos: Consiste en presentar la descripción de una

determinada situación real o ficticia para que intenten arribar a una solución ya sea individual o grupalmente.

♦ Técnicas de resolución de problemas: Planteado el problema, deberán elaborar las hipótesis de soluciones y extraer las conclusiones pertinentes.

Ingeniería en Sistemas de Información Paradigmas de programación

Página 19 de 27

♦ Método realidad teoría-práctica: Se observan problemáticas de la realidad que se relacionan con los temas a desarrollar. Se propone el estudios de los temas y se asignan tareas a los grupos según intereses comunes, y luego se proponen las conclusiones de la totalidad de los grupos.

♦ Técnicas de grupo: • Taller: Aprender haciendo. • Interrelación con grupo Objeto: Utilización del grupo de

investigación de Objetos para colaboración en talleres a efectos de ampliar el tiempo de uso de la tecnología de objetos.

Formación práctica: Consignar la carga horaria total dedicada a la formación práctica vinculada a los cuatro grupos que se indican a continuación: a) Formación experimental: no se consigna Ámbito de realización: Disponibilidad de infraestructura y equipamiento: Actividades a desarrollar: Tiempo (carga horaria, período que abarca): Evaluación (de seguimiento y final): b) Resolución de problemas de ingeniería: Ámbito de realización: En el Laboratorio de Informática Actividades a desarrollar: Resolución de casos de estudio en los diferentes paradigmas de programación estudiados. Implementación de programas en Smalltalk, Prolog y Scheme Tiempo (carga horaria, período que abarca): 18 horas, durante todo el cursado Evaluación (de seguimiento y final): de seguimiento, mediante entregas parciales y coloquio final c) Actividades de proyecto y diseño: no se consigna Ámbito de realización: Actividades a desarrollar: Tiempo (carga horaria, período que abarca): Evaluación (de seguimiento y final): d) Práctica Supervisada: no se consigna Ámbito de realización: Actividades a desarrollar: Tiempo (carga horaria, período que abarca): Evaluación (de seguimiento y final):

Ingeniería en Sistemas de Información Paradigmas de programación

Página 20 de 27

BIBLIOGRAFÍA

Necesaria 1. Tasistro A., J. Vidart ”Programación Lógica y funcional”. EBAI (1988).

2. Carnota Raúl Jorge, Teszkiewicz Alberto Daniel “Sistemas expertos y

representación del conocimiento” EBAI 1989.

3. Sethi Ravi “Lenguajes de programación - Conceptos y constructores”

Addison-Wesley Iberoamericana (1992).

4. Kenneth C. Louden “ Lenguajes de programación - Principios y práctica”

Thomson 2004.

5. Budd Timothy “Introducción a la Programación Orientada a Objetos” .

Addison-Wesley Iberoamericana (1994).

6. Alfonseca Manuel, Alcalá Alfonso “Programación Orientada a Objetos , Teoría y Técnicas OOP para desarrollo de software” Anaya Multimedia (1992).

7. Tutorial de Java en español 8. Sitio Web del grupo Objeto, Facultad Regional San Francisco de la Universidad

Tecnológica Nacional y sus enlaces a sitios de interés:

� http://java.sun.com/docs/books/tutorial/ � http://javaboutique.internet.com/ � http://java.sun.com/java.sun.com/doc/ � http://www.cica.es/formacion/JavaTut/ � http://www.dcc.uchile.cl/~lmateu/Java/Apuntes/index.htm � http://mec21.etsii.upm.es/ayudainf/aprendainf/Java/Java2.pdf 9. Teoría de Java con ejemplos, Manual en realización del grupo Objetos, de la

Facultad Regional San Francisco de la Universidad Tecnológica Nacional. 2002

Opcionales

10. Kowalski R. A. .”Logic for Problem Solving”. North Holland, Amsterdam,

(1979).

11. Puyau H., J. Roetti. “Elementos de Lógica Matemática”. EUDEBA, (1976).

12. Sterling L. , E. Shapiro. “The art of Prolog: Advanced Programming

Techniques”. The MIT Press (1986).

13. James Martín - James J. Odello “Análisis y Diseño Orientado a Objetos”.

Prentice Hall Hispanoamericana (1994).

14. Lalonde y J. Pugh.“Inside Smalltalk. Vol. I y II”. Prentice Hall International

(1991).

Ingeniería en Sistemas de Información Paradigmas de programación

Página 21 de 27

15. Lozano y F. Segovia Perez. “Programación Orientada a Objetos.

Aplicaciones con Smalltalk”. Paraninfo (1993).

16. Meyer. “Object-Oriented Software Construction”. Prentice Hall International

(1988).

17. Strostrup. “What is Object-Oriented Programming?”. IEEE Software, 10-19

(1988).

18. PC Scheme a simple, modern LISP, User's Guide.

19. Gregorio Klimovsky “ Las desventuras del conocimiento” AZ Editora (1994).

20. Thomas S. Kuhn “La estructura de las revoluciones científicas” México, Fondo

de Cultura Económica (1971).

21. Ludwin Von Bertalanffy “Teoría general de los sistemas, Fundamentos, desarrollo , aplicaciones” Fondo de Cultura Económica, Mexico (1992).

22. Jean Piaget “Naturaleza y métodos de la epistemología” Editorial Proteo (1989).

23. Jorge E. Grau “Tecnología y Educación” Fundec ( 1995).

24. Ministerio de Educación de la República Argentina “Ley Federal de Educación” (1993)

25. Universidad Tecnológica Nacional “Cuadernillo de capacitación – Planificación coordinada” ( 1996).

26. Universidad Tecnológica Nacional “Nuevo diseño curricular para Ingeniería en sistemas de Información” ( 1994).

27. Ezequiel Ander Eggen "La Planificación educativa, concepto, métodos, estrategias y técnicas para educadores" Editorial Magisterio del Río de Plata (Bs. As. 1995).

28. The Java Tutorial A practical guide for programmers de java de Sun Microsystems, páginas web de la empresa generadora Java.

Ingeniería en Sistemas de Información Paradigmas de programación

Página 22 de 27

ARTICULACIÓN

Articulación con el Área:

Asignatura Carga Horaria Porcentaje Paradigmas d e Programación 128 20% Matemática Discreta Algoritmos y Estructuras de Datos

96 160

15% 25%

Ingeniería en Sistemas de Información Paradigmas de programación

Página 23 de 27

Temas relacionados con materias del área:

Matemática Discreta Tema relacionado Relaciones y Funciones entre conjuntos Recurrencia Árboles binarios – Eje temático 4 Grafos – Eje temático 9

Paradigma Funcional Eje temático 2

Estructuras algebraicas – Eje temático 6 Árboles binarios – Eje temático 11

Cálculo lambda Eje temático 3

Lógica y Proposiciones lógicas – Eje temático 2 Relaciones y Funciones entre conjuntos Recurrencia Árboles binarios – Eje temático 4 Grafos – Eje temático 9

Paradigma lógico Eje temático 4

Algoritmos y

Estructuras de Datos Tema relacionado

Concepto de paradigma Introducción Eje temático 1

Tipos de Datos – Eje temático 1 Sintaxis y Semántica – Eje temático 2

Paradigma Funcional Eje temático 2 Cálculo lambda Eje temático 3 Paradigma Lógico Eje temático 4 Paradigma orientado a Objetos Eje temático 5

Ingeniería en Sistemas de Información Paradigmas de programación

Página 24 de 27

Articulación con el Nivel:

Asignatura Carga Horaria Porcentaje Paradigmas de programación 128 20% Sintaxis y Semántica del Lenguaje 128 20%

Temas relacionados con materias del nivel:

Sintaxis y semántica de los lenguajes Tema relacionado

Estructuras de control – Eje temático 6 Tipos de datos – Eje temático 5

Paradigma funcional – Eje temático 2 Paradigma orientado a objetos – Eje temático 5

Abstracción de datos Eje temático 2 Abstracción de control Eje temático 2

Paradigma funcional – Eje temático 2 Paradigma orientado a objetos – Eje temático 5 Paradigma lógico – Eje temático 4 Cálculo lambda – Eje temático 3

Ingeniería en Sistemas de Información Paradigmas de programación

Página 25 de 27

Articulación con las correlativas:

Asignatura Para cursar Para rendir Cursada Aprobada Aprobada

Paradigmas de Programación

Matemática Discreta Algoritmo y Estructuras de Datos

--- Matemática Discreta Algoritmo y Estructuras de Datos

Temas relacionados con las correlativas:

Sintaxis y Semántica de los lenguajes

Tema relacionado

Estructuras de control – Eje temático 6 Tipos de datos – Eje temático 5

Paradigma funcional – Eje temático 2 Paradigma orientado a objetos – Eje temático 5

Abstracción de datos Eje temático 2 Abstracción de control Eje temático 2

Paradigma funcional – Eje temático 2 Paradigma orientado a objetos – Eje temático 5 Paradigma lógico – Eje temático 4 Cálculo lambda – Eje temático 3

Ingeniería en Sistemas de Información Paradigmas de programación

Página 26 de 27

ORIENTACIÓN

Del Área:

El área de programación tiene como objetivos formar en las metodologías, técnicas y lenguajes de programación como herramientas básicas para el desarrollo de software y el estudio de disciplinas que permitan crear nuevas tecnologías.

De la Asignatura:

Es finalidad de la asignatura Paradigmas de Programación en avanzar en el conocimiento de los lenguajes de programación con el estudio de otros paradigmas y sus modelos conceptuales como la programación orientada a objetos, la programación funcional y la programación lógica y resolver problemas utilizando nuevos conceptos, aplicando distintos lenguajes de programación.

Ingeniería en Sistemas de Información Paradigmas de programación

Página 27 de 27

ESTRUCTURACIÓN DE TIEMPOS

TEMA HS SEMANAS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Fecha comienzo semana

02 08

09 08

16 08

23 08

3008

06 09

1309

20 09

2709

04 10

1110

18 10

25 10

01 11

08 11

15 11

Unidad 1 8 X Unidad 2 24 X X X Unidad 3 20 X X X Unidad 4 28 X X X X Unidad 5 32 X X X X Unidad 6 4 X Trabajos prácticos

X X X X X X X X X X X X X X

Evaluación parcial

12 1º 2º 3º

Total 128

La distribución horaria se realizó manteniendo el siguiente criterio: a) Cada semana de clase contiene siete (8) horas cátedras. b) Las semanas propuestas por el diseño curricular son dieciséis (16). c) Los prácticos son realizados en laboratorio donde se instrumentará la

aplicación directa de cada paradigma en lenguajes de programación que soporten cada uno de ellos.

d) Las ejercitaciones que no fueran terminadas en horario de clase, deberá ser completadas por los alumnos a los fines de mantener su cátedra al día y poder completar su carpeta de trabajos prácticos que deberá ser entregada a los fines de la regularidad o cualquiera de las otras situaciones que fueron antepuestas en los criterios de evaluación.

e) Las dudas que pudieran surgir serán evacuadas por el docente en horario extra clase, a convenir.