- From the calculator to the computer (JavaMOOC1, Week 1):
Expressions, statements, programs, data types, identifiers, decisions
- State transformation (JavaMOOC1, Week 2):
Repetition, arrays, representation of data and programs
- Errors (JavaMOOC2, Week 1&2):
Debugging, testing, reasoning
- Functional abstraction (JavaMOOC1, Week 3):
Methods, scope, recursive methods
- Sorting (JavaMOOC3, Week 5):
Simple sorts, efficient sorts, intuition about efficiency
- Object encapsulation (JavaMOOC1, Week 4):
Objects and classes, information hiding, inheritance, polymorphism
- Object encapsulation (JavaMOOC1, Week 5):
Abstract classes, interfaces, packages, APIs, libraries