CC6101/CC71P Objetos y Aspectos

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.