06B: CS2102 Course Objectives

critical thinking Thinking like a computer scientist
design Understand how to design programs
programming Demonstrate the ability to implement these designs
documentation Produce accurately documented implementations
examination Demonstrate competence in basic programming concepts
tool usage Exposure to state-of-the-art development tools
creativity Use critical thinking skills and creativity to solve problems
experimentation Design scenarios to explain behaviors and demonstrate correctness of programs 

The course is broken into a sequence of modules, each of which has clearly-identified objectives that will be refined (as appropriate) to provide detailed instructions on the desired level of understanding that I am asking of all students.

Module Dates Range of Expectations
Computation 10/24 - 10/30 Understand fundamental building blocks of computations in Java
Understand how to validate programs manually
Understand how to debug/execute programs
Composition I 10/31 - 11/03 Understand control flow
Understand arrays [fixed]
Understand how to decompose functions
Exam 1 11/06 Exam 1
Composition II 11/07 - 11/10 Understand basis for grouping units together into classes
Understand linked lists [dynamic]
Understand exceptions
Understand JUnit testing standard
Classification I 11/13 - 11/20 Understand inheritance
Understand encapsulation
Understand polymorphism
Understand abstract classes
Understand Map concept
Exam 2 11/21 Exam 2
Classification II

Amida week
11/27 - 12/01 Understand interfaces

Identify key decisions from requirements [time/space tradeoff]
Defend decisions (in written form) and encapsulate
Implement solution
Validate solution through JUnit standard

Gameboard
Project
12/04 - 12/08 Identify key decisions from requirements
Select core abstractions and identify extensions via subclassing
Develop framework designed to support core requirements
Validate extensibility of framework
Implement solution
Validate solution through JUnit standard
Big Picture Review 12/11 - 12/12 From Design Recipes to Design Principles
From Design Principles to Design Patterns
Exam 3 12/14 Exam 3

Another way to view the course material is shown in the Topic Map for the course now available.