Core Curriculum

Professional Programming

Course Outline

There are a total of 12 lectures, each running for 3 hours.

SessionTopicsReadingsHomeworks
1 “Hello World!”, IDE and debugging Lecturer handout hw1
2 Language basics, classes and objects, interfaces and inheritance Lecturer handout hw2
3 Using libraries Lecturer handout hw3
4 Exceptions, I/O, concurrency Lecturer handout hw4
5 Writing testable code (unit tests and mocking) Lecturer handout hw5
6 Data structures: list, stack, queue, set and map Lecturer handout hw6
7 Sorting and searching Lecturer handout hw7
8 API, interface, class library design Lecturer handout hw8
9 Garbage collection Lecturer handout hw9
10 Memory, IO, CPU stats, profiling, and all that Lecturer handout hw10
11 Organic programming Lecturer handout hw11
12 Numerical programming Lecturer handout hw12