Objetivo General
El curso trata tópicos avanzados en lenguajes (mayoritariamente orientado a objetos) utilizados para obtener una mejor ingeniería de software. La primera parte trata de técnicas de modularizacion avanzados, enfocando mayoritariamente en aspectos, pero también tratando otras técnicas como traits y mixins. La segunda parte se ve lenguajes full orientado a objetos, reflexión y meta-programmación.
El solo prerequisito del curso es de haber aprobado Lenguajes 1
Programa Tentativo del Curso - 2013
Semana | Clase 1 | Clase 2 |
---|---|---|
1 (19 Ago) | Intro a los Aspectos | AspectJ |
2 (26 Ago) | AspectJ | |
3 (2 Sept) | Aspect Weavers | |
4 (9 Sept) | Tarea1 fin (profe en conferencia) | |
5 (16 Sept) | Vacaciones Fiestas Patrias | |
6 (23 Sept) | Tarea2 empiezo (profe en conferencia) | |
7 (30 Sept) | AspectMaps | Aspects & Design |
8 (7 Oct) | Traits, Mixins | |
9 (14 Oct) | Aspectual Source Code Analysis | |
10 (21 Oct) | Intro a Smalltalk | Smalltalk Meta-Arquitectura |
11 (28 Oct) | Smalltalk Meta-Arquitectura | |
12 (4 Nov) | Presentaciónes Artículos | |
13 (11 Nov) | ||
14 (18 Nov) | ||
15 (25 Nov) | ||
16 (2 Dec) | Continuaciones y Web | Self |
Tópicos Posibles de los Presentaciones de Artículos
Evaluación
Asistencia a clases es obligatoria. Hay micro-controles en varias clases, típicamente consisten de una pregunta sobre los conceptos vistos en la clase anterior. El ultimo control 'grande' es una presentación de artículos. En la nota de controles también se considera participación en clase. Las tareas son incrementales, construyendo un software de tamaño bastante grande, usando aspectos. La ponderación de la nota final es 60% controles, 40% tareas.