Back

Design Patterns

In this intensive seminar there is some lecture time, but the majority is spent in small teams at vast white­board spaces while the coach rotates and works with each team, guiding them through the case study problems. The course proceeds through a series of case studies within which you learn design pattern skills. This course approaches software design from three perspectives: the software engineering princi­ples that enable development of quality software, modeling of software elements using the Unified Mod­eling Language (UML), and the application of design patterns as a means of reusing design models that are accepted best practices.The assignments will apply an agile design first methodology.

2 days
Beginner
Virtual/Classroom
Objective
  • Design flexibly with patterns (primarily, the "gang-of-four" design patterns)
  • Learn and collaborate with agile modeling
  • Design good type (class) hierarchies
  • Learn and collaborate with simple UML
  • Apply refactorings to patterns
Pre-Requisite
  • The working assumption for this course is that registered students are proficient in programming. Our goal is to move beyond programming-specific concerns to a point where one can think through a design for a software application.