Week One
Introduction
Welcome, syllabus, and some preliminary topics.
A whirlwind tour of C++, P1
Most of you will have already seen this material in another class. However, we'll do a quick (two lecture) review of the core C++ language to make… sure… we'll all up to speed.
Week Two
Properties of Data, and Abstract Storage Model
Worth reviewing
A whirlwind tour of C++, P2
In this lecture, we're going to continue our C++ review, and explore some of the built-in classes (strings and… streams).
A Whirlwind Tour of C++, Pt 3.
We'll finish up our review of C++ -- and turn our attention to much more interesting topics.
Week Three
Introduction to design patterns
The first step toward becoming an effective software designer is a clear understanding of the generally accepted design principles. There's no better… place to start that with design patterns.
Creational Patterns
We'll begin our discussion of design patterns by exploring some of the creational patterns.
Week Four
Structural Patterns
Basic techniques to organize objects
Anti-Patterns
In this presentation, we're going to talk about ways to improve our code, and begin the discussion of how we can make our… objects… work more…… expressively, and effectively.
Week Five
Model-View-Controller
Please watch this before next Tuesday
Leveling Up Design
Add your description here...
Behavioral Patterns
In this lecture, we're going to begin our review of behavioral patterns – which describe ways that objects behave, organize, and……… communicate. These… are concepts you'll… rely on again and again to design more flexible solutions.
Week Six
More Behavioral Patterns
Making objects work together, better
Communication Patterns
Learning to get our objects to communicate effectively
Week Seven
Testing and Validation
This lecture will discuss a number of concepts related to software design and quality. This is essential material for… helping students… improve their software design skills.
Let's Decompose PA3
Thinking about design
Week Eight
Design Studio, Part 1
We've been discussing patterns, anti-patterns, and the process of converting stories into scenarios, and scenarios into code. Let's… put… our new skills to… work.
Design Studio, Part 2
Let's get our class fully functional
Week Nine
Putting Patterns Together
Add your description here...
Let's Finish our Scenario Design Example
Add your description here...
Week Ten
Threading
Multi-tasking is much easier in C++ these days
What's next, and final thoughts
Getting ready for ECE141b
Final
ECE141a Final
Good luck to everyone!
Overflow
Diagramming
Telling stories really counts in software design. Capturing ideas with diagrams is one of the most common ways we share… high-level ideas. Let's examine some of the popular techniques.
Mid-term
Add your description here...
It's all a Game!
Let's discuss our final assignment
Digging into the debugger
Learning to properly use your debugger is a valuable skill when debugging software. Before we dive headlong into… software… design topics, we'll go over debugger basics.
Where to go from here...
Continuing on our journey
Slidespace Overview
Add your description here...