Los lenguajes de programación son el corazón técnico de la ingeniería de software, y la programación orientado a objetos es el paradigma más usado en la industria. Por lo tanto, construir mejores programas orientados a objetos comienza por escribir mejores códigos. Desafortunadamente, los estudiantes de ingeniería no poseen buenas prácticas de programación, y menos aún, reusan el conocimiento de expertos para solucionar problemas similares en el paradigma orientado a objetos. En este curso, se verán técnicas de estilo de programación y de reuso de conocimientos de expertos (patrones de diseños) para el paradigma orientado a objetos. Además, veremos que el paradigma orientado a objetos no es significado de Java, por ejemplo, en JavaScript, un lenguaje orientado a objetos basados en prototipos, es decir, sin clases. Aquí tu encontrarás información acerca el curso Patrones de Diseño Orientado a Objetos.
Programa del curso:
programadelcurso.
Aquí puede ser acceder al grupo de discusión del curso: http://groups.google.com/group/patrones-de-disenio-2011/
Práctica
Si deseas practicar higher-order y first-class functions en JavaScript, puedes tratar: http://jsbin.com/
Clases:
Unidad 1: Conociendo los lenguajes
- programaDetallado (sujeto a cambios)
- clase0-diagnostico
- clase1-curso
- clase2-lenguajes
- clase2_2-JavaScript
- clase3-fls
- clase4-modularidad
- clase5-RepasoPOO
- CodigosEnClases
- Repaso: metodosArray (pueden probarlo en http://jsbin.com/)
- Auxiliar- 29/03-first-class & higher-order functions
- Pauta
Unidad 2: Prácticas de Programación
- clase6-ProgrammingStyleAndFormat
- clase7-ProgrammingStyle-NamingConventions
- clase8-ProgrammingStyle-Comments
- clase8-ProgrammingStyle-Operators
- clase8_ProgrammingStyle-Reusability
- clase9_ProgrammingStyle-Scope
- apuntes_programming_style
Unidad 3: Patrones de diseños
- clase5-RepasoPOO-2 (claseXInterface)
- clase7-patrones
- pat0FluentInterface (FluentInterfaceExample)
- pat1Cache (CacheExample)
- pat2Factory (FactoryExample)
- pat3Singleton (SingletonExample)
- pat4Adapter (AdapterExample)
- pat5FlyWeight (FlyweightExample)
- pat6Strategy (StrategyExample)
- pat7Observer (ObserverExample)
- pat8Composite (CompositeExample)
- pat9Command (CommandExample)
Unidad 4: POO basado en prototipos (Pequeño caso de estudio: JavaScript)
Ayudante:
Milton Inostroza. (minostro@dcc.uchile.cl)
Horario y Sala:
Lunes y Jueves A. Sala: 511. Auxiliar: Martes E. Sala: 312.
Fechas:
Solemne 1: Jueves 21 de Abril (hora de clases) Solemne 2: Por confirmar
Evaluaciones:
Aquí están las evaluaciones.
Inscribirse para la presentaciones acerca de lenguajes: aquí