Escolar Documentos
Profissional Documentos
Cultura Documentos
C. PRE-REQUISITOS DE CONOCIMIENTOS
Programacin Orientada a Objetos
Total 72 74 54
G. DESCRIPCIN DE TPICOS
Tpico 1
Introduccin al tpico En esta seccin se revisan lenguajes de programacin
ms relevantes y su evolucin hasta la actualidad,
resaltando las razones de diseo y las caractersticas
principales de cada uno de ellos.
Resultado de aprendizaje del Describir las razones del por qu estudiar conceptos
tpico generales de diseo, evaluacin de lenguajes, sus
dominios e influencias a lo largo de la historia.
Palabras claves Principios, Categoras, Influencias de diseo.
Sub-Tpicos
1.1 Razones para el estudio de Principios de Lenguajes de Programacin
1.2 Dominios de la programacin
1.3 Criterios de Evaluacin de Lenguajes
1.4 Influencias en el diseo de Lenguajes
1.5 Mtodos de implementacin
1.6 Entornos de desarrollo
Materiales
Digital (Presentacin PPT) Uso de proyector para presentacin de slides.
Impreso (Libro) Texto impreso para lectura de preliminares del
texto gua.
Digital (Video) Video sobre anlisis de diferentes lenguajes de
programacin actuales.
Digital (Texto en lnea) Preguntas realizadas a los estudiantes acerca
de la lectura.
Actividades
Actividad 1.1: Se realizarn preguntas a los estudiantes para
Encuesta sobre uso de lenguajes de conocer su nivel de experiencia e inters
programacin personal en el aprendizaje de lenguajes de
programacin. Por medio de grficos
estadsticos el curso podr conocer la
relevancia asignada a cada lenguaje,
motivando de esta forma al estudio de
diferentes paradigmas de programacin.
Actividad 1.2: Se presentarn las herramientas de
Presentacin introductoria a los lenguajes de programacin y trabajo en grupo que sern
programacin y paradigmas utilizadas en el curso para el desarrollo de
aplicaciones utilizando diferentes paradigmas
de programacin.
Actividad 1.3: El captulo de preliminares del texto gua
Lectura de preliminares del texto gua contiene una interesante resea histrica de los
lenguajes de programacin ms comunes. Por
medio de la lectura de este captulo los
estudiantes podrn conocer aspectos
importantes del diseo de cada lenguaje.
Actividad 1.4 En este video se presenta un anlisis crtico de
Video sobre pros y contras de lenguajes de algunos lenguajes de programacin utilizados
programacin modernos en la actualidad, lo cual contribuir a que los
estudiantes amplen su criterio para evaluar
diferentes lenguajes de programacin.
Tpico 2
Introduccin al tpico En esta seccin se abordan los conceptos relacionados con
paradigmas de programacin y cmo estos conceptos han
sido aplicados con enfoques distintos a lo largo de la
historia.
Resultado de aprendizaje del Analizar el proceso evolutivo de los lenguajes de
tpico programacin y las decisiones de diseo de los principales
lenguajes.
Palabras claves Ortogonalidad, Tiempo-Compartido.
Sub-Tpicos
2.1 Fortran y la IBM 704
2.2 Programacin Funcional: LISP
2.3 El primer paso hacia la sofisticacin: ALGOL 60
2.4 Los inicios del tiempo-compartido: BASIC
2.5 Los inicios de la abstraccin de dados: SIMULA 67
2.6 Diseo ortogonal: ALGOL 68
2.7 Programacin basada en lgica: Prolog
2.8 Nuevas tendencias en programacin: Clojure
Materiales
Digital (Video) Video sobre evolucin de los principales
lenguajes de programacin
Impreso (Libro) Lectura sobre programacin funcional en LISP
y Clojure.
Digital (Presentacin PPT) Presentacin sobre paradigmas de
programacin y criterios de evaluacin.
Actividades
Actividad 2.1: Se presentar una resea histrica de los
Video sobre evolucin de los lenguajes de diferentes lenguajes de programacin que han
programacin ms relevantes. sido relevantes, identificando en cada ejemplo
la presencia de conceptos relacionados con
paradigmas de programacin y caractersticas
del lenguaje.
Actividad 2.2: Se revisarn los principales paradigmas de
Presentacin sobre paradigmas de programacin y se abordar en detalle los
programacin y criterios de evaluacin criterios de evaluacin de lenguajes, haciendo
un anlisis crtico que permita identificar
caractersticas a considerar en nuevos
lenguajes de programacin.
Actividad 2.3: Lectura sobre programacin funcional,
Lectura sobre programacin funcional tomando como referencia los lenguajes de
programacin LISP y Clojure.
Actividad 2.4: Discusin en clase sobre abstraccin de datos
Discusin en clase y diseo ortogonal.
Tpico 3
Sub-Tpicos
3.1 Introduccin a la sintaxis y semntica en lenguajes de programacin
3.2 El problema general de describir sintaxis
3.3 Mtodos formales para descripcin de sintaxis
3.4 Atributos de gramticas
3.5 Anlisis lxico
Materiales
Digital (Presentacin PPT) Introduccin a los conceptos de sintaxis y
semntica
Impreso (Libro) Lectura del texto gua sobre descripcin de
sintaxis y semntica
Impreso (Paper) Lectura de artculo sobre otro enfoque de
anlisis semntico
Desarrollo de ejercicios de refuerzo Desarrollo de ejercicios para refuerzo de
(Simulaciones en Lnea) conceptos y tcnicas abordadas en clase
Actividades
Actividad 3.1: Introduccin general de los temas a tratar en
Introductoria a la arquitectura y gramtica de la seccin y motivacin
los traductores
Actividad 3.2: La lectura propuesta detalla los aspectos
Lectura sobre descripcin de sintaxis y relevantes relacionados con los conceptos de
semntica sintaxis y semntica desde un punto de vista
general, introduciendo tambin las tcnicas
ms comunes para identificacin de
ambigedades y anlisis sintctico
Actividad 3.3: Tcnicas para identificacin de ambigedades,
Revisin de tcnicas conversin de autmatas no determinsticos
en determinsticos, rboles de anlisis
sintctico
Actividad 3.4: Desarrollo de ejercicios sobre tcnicas de
Ejercicios sobre tcnicas de anlisis sintctico deteccin de ambigedades, autmatas
determinsticos y conversin a autmatas no
determinsticos
Actividad 3.5: Resumen de los conceptos abordados en el
Resumen de los temas tratados tpico y su aplicacin en ejercicios prcticos
Actividad 3.6: Ejercicios relacionados al anlisis lxico por
Ejercicios realizados por los alumnos parte de los alumnos y guiados por el profesor
Tpico 4
Introduccin al tpico Este tpico tratar los conceptos relacionados con tipos
de datos, expresiones, declaraciones de asignacin y
control
Resultado de aprendizaje del Describir los atributos de variables, incluyendo tipos y
tpico conceptos de enlace.
Palabras claves Enlace, Equivalencia de tipos, mbito de variables.
Sub-Tpicos
4.1 Introduccin a tipos de datos y expresiones
4.2 Variables
4.3 El concepto de enlace
4.4 mbito y tiempo de vida
4.5 Tipos de datos primitivos
4.6 Tipos de dados String, Array y Lista
4.7 Chequeo de tipos
4.8 Tipado fuerte
4.9 Equivalencia de tipos
Materiales
Digital (Presentacin PPT) Presentacin sobre introduccin general a los
temas del tpico
Impreso (Libro) Lectura sobre chequeo de tipos y tipado fuerte
Impreso (Libro) Lectura sobre historia del lenguaje de
programacin LUA (Roberto Ierusalimschy)
Digital (Simulaciones en Lnea) Preguntas y ejercicios del tpico
Actividades
Actividad 4.1: Se realizar una introduccin de los temas a
Introduccin general de los temas a tratar y tratar en el tpico y su importancia en los
motivacin lenguajes de programacin
Actividad 4.2: Lectura relacionada al chequeo de tipos y
Lectura sobre chequeo de tipos y tipado fuerte tipado fuerte. Bsqueda de material
bibliogrfico relacionado al tema
Actividad 4.3: Discusin en clase acerca de la lectura
Discusin en clase acerca de la lectura
Actividad 4.4: Desarrollo de preguntas y ejercicios
Preguntas y ejercicios del texto gua planteados a los estudiantes
Tpico 5
Sub-Tpicos
5.1 Introduccin a subprogramas
5.2 Fundamentos de subprogramas
5.3 Mtodos de paso de parmetros
5.4 Llamada indirecta a subprogramas
5.5 Detalles de diseo para funciones
Materiales
Digital (Presentacin PPT) Revisin de conceptos relacionados con
subprogramas
Impreso (Paper) Lectura del paper Interoperabilidad de
lenguajes de programacin
Digital (Texto en lnea) Lectura sobre Modelos semnticos del paso
de parmetros
Digital (Texto en lnea) Lectura sobre implementacin de modelos de
paso de parmetros
Actividades
Actividad 5.1: Introduccin a los subprogramas y conceptos
Introduccin general de los temas a tratar y relacionados
motivacin
Actividad 5.2: Lectura sobre Modelos semnticos del paso de
Lectura sobre Modelos semnticos del paso de parmetros
parmetros
Actividad 5.3: Lectura sobre implementacin de modelos de
Lectura sobre implementacin de modelos de paso de parmetros
paso de parmetros
Actividad 5.4: Discusin en clase acerca de la lectura
Discusin en clase acerca de la lectura
Actividad 5.5: Resumen de los temas tratados en el tpico
Resumen de los temas tratados en el tpico
Actividad 5.6: Lectura crtica y resumen de ideas principales
Recensin de artculo asignado del artculo sobre Interoperabilidad de
lenguajes de programacin
Tpico 6
Sub-Tpicos
6.1 El concepto de Abstraccin
6.2 Introduccin a la abstraccin de datos
6.3 Detalles de diseo para tipos de datos abstractos
6.4 Ejemplo en distintos lenguajes
6.5 Encapsulacin
Materiales
Digital (Presentacin PPT) Presentacin de introduccin de conceptos
Impreso (Libro) Lectura sobre la entrevista a Bjame
Stroustrup, C++.
Digital (Simulaciones en Lnea) Actividad grupal para anlisis de preguntas
asignadas sobre la lectura
Digital (Presentacin PPT) Presentacin para el resumen de los temas
tratados y cierre
Actividades
Actividad 6.1: Se introducen los conceptos de abstraccin de
Introduccin general de los temas a tratar y datos y encapsulacin, as como tambin los
motivacin mecanismos para el soporte de abstraccin de
datos en lenguajes de programacin
Actividad 6.2: Lectura sobre entrevista a Bjarne Stroustrup,
Lectura asignada C++.
Actividad 6.3: Actividad grupal para anlisis y discusin de la
Preguntas sobre la lectura lectura asignada
Actividad 6.4: Resumen general de los temas abordados en
Resumen de los temas tratados el tpico
Tpico 7
Sub-Tpicos
7.1 Introduccin general del tpico
7.2 Programacin orientada a objetos
7.3 Detalles del diseo para lenguajes orientados a objetos
7.4 Soporte para programacin orientada a objetos en LISP
7.5 Soporte para programacin orientada a objetos en C++
7.6 Soporte para programacin orientada a objetos en Java
7.8 Recoleccin de basura
Materiales
Digital (Presentacin PPT) Presentacin de conceptos y temas generales
del tpico
Impreso (Paper) Lectura sobre mtodos de recoleccin de
basura
Digital (Simulaciones en Lnea) Taller sobre mtodos de recoleccin de basura
Digital (Simulaciones en Lnea) Desarrollo de aplicaciones usando
programacin orientada a objetos
Actividades
Actividad 7.1: Se introduce de forma general los temas a
Introduccin general de los temas a tratar y tratar durante el tpico y se detallan los
motivacin requerimientos para la realizacin de
actividades prcticas
Actividad 7.2: Los estudiantes deben preparar el ambiente
Preparacin de ambiente de desarrollo para de desarrollo necesario para la realizacin de
prcticas prcticas en los lenguajes de programacin
seleccionados para este tpico
Actividad 7.3: En esta actividad los estudiantes desarrollarn
Desarrollo de aplicaciones con lenguajes programas utilizando los lenguajes de
orientados a objetos programacin orientados a objetos abordados
en clase
Actividad 7.4: Lectura sobre mtodos de recoleccin de
Lectura asignada basura
Actividad 7.5: Taller (aprendizaje colaborativo), Tema:
Taller Garbage Collection
Tpico 8
Sub-Tpicos
8.1 Funciones Matemticas
8.2 Fundamentos de lenguajes de programacin funcional
8.3 El primer lenguaje de programacin funcional: LISP
8.4 Introduccin a Common LISP
8.5 Introduccin a Closure
8.6 Comparacin entre lenguajes funcionales y estructurados
Materiales
Digital (Presentacin PPT) Presentacin de conceptos generales e
indicaciones para prcticas utilizando
lenguajes funcionales.
Digital (Texto en lnea) Lectura sobre programacin en LISP
Digital (Texto en lnea) Lectura sobre programacin usando CLOJURE
Taller (Simulaciones en Lnea) Taller de desarrollo de aplicaciones usando un
lenguaje funcional
Actividades
Actividad 8.1: Esta actividad introduce de forma general los
Introduccin general de los temas a tratar y conceptos relacionados con programacin
motivacin funcional. Los estudiantes debern preparar el
ambiente de desarrollo para utilizar los
lenguajes de programacin designados para el
tpico
Actividad 8.2: Lectura sobre programacin en LISP
Lectura asignada
Actividad 8.3: Desarrollo de software utilizando un lenguaje
Desarrollo de software utilizando un lenguaje funcional, LISP o CLOJURE
funcional, LISP o CLOJURE
Actividad 8.4: Revisin general de los temas abordados en el
Resumen de los temas tratados tpico y las tendencias actuales del desarrollo
de software con lenguajes funcionales
Tpico 9
Materiales
Digital (Presentacin PPT) Presentacin de conceptos e indicaciones
sobre las actividades del tpico
Impreso (Paper) Lectura sobre programacin orientada a
aspectos
Taller (Simulaciones en Lnea) Taller sobre conceptos y ejemplos de POA
Actividades
Actividad 9.1: Introduccin general del tpico y conceptos
Introduccin general de los temas a tratar y relacionados con programacin orientada
ejemplos aspectos. Principales diferencias de este
enfoque en relacin a los paradigmas de
programacin tradicionales
Actividad 9.2: Lectura sobre programacin orientada a
Lectura asignada aspectos
Actividad 9.3: Taller aprendizaje cooperativo, conceptos y
Taller ejemplos de lenguajes orientados a aspectos
Tpico 10
Sub-Tpicos
10.1 Introduccin general del tpico
10.2 Introduccin a concurrencia a nivel de subprogramas
10.3 Semforos y Monitores
10.4 Paso de mensajes
10.5 Hilos en Java y C++
10.6 Concurrencia en lenguajes funcionales
10.7 Concurrencia a nivel de declaraciones
Materiales
Digital (Presentacin PPT) Presentacin de conceptos iniciales e
indicaciones para las actividades prcticas
Impreso (Libro) Lectura sobre conceptos de concurrencia
Digital (Texto en lnea) Lectura sobre programacin concurrente en
JAVA y C++
Digital (Simulaciones en Lnea) Desarrollo de aplicaciones que realizan tareas
en paralelo
Actividades
Actividad 10.1: Se realiza una introduccin general de los
Introduccin general de los temas a tratar y temas a tratar en el tpico. Los estudiantes
motivacin debern preparar el ambiente de desarrollo
para la realizacin de ejercicios prcticos.
Actividad 10.2: En esta actividad se presentan los conceptos
Conceptos relacionados con concurrencia relacionados con programacin concurrente,
los cuales debern ser aplicados por los
estudiantes en el desarrollo de programas que
realicen tareas de forma concurrente.
Actividad 10.3: En esta actividad los estudiantes desarrollarn
Actividad grupal en grupos un programa que requiera de
procesamiento paralelo para la solucin de un
problema particular.