Programming patterns and design patterns in the introductory computer science course

Quick take
Programming patterns for an intro programming course.


Viera Proulx


We look at the essential thinking skills students need to learn in the introductory computer science course based on object-oriented programming. We create a framework for such a course based on the elementary programming and design patterns. Some of these patterns are known in the pattern community, others enrich the collection. Our goal is to help students focus on mastering reasoning and design skills before the language idiosyncrasies muddy the water.

Name Use Patterns

Reading Data Pattern

Read - Process - Write Pattern

Encapsulation Pattern

Repetition Patterns

Selection Pattern

Traversal Patterns

Cumulative Result Patterns

Conversion Patterns

Indirect Reference Patterns