Object-Oriented Programming (C++)

Timetable

Week
No.
Chapter
No.
NETB151 Date NETB161 Sources
1. 8

Testing and Debugging
Unit Tests, Selecting Test Cases, Test Case Evaluations, Assertions, Program Traces, The Debugger, Strategies, Debugger Limitations

1.03
week01.htm
sqrtest1.cpp
sqrtest2.cpp
sqrtest3.cpp
sqrtest4.cpp
sqrtest5.cpp
2. 10
Pointers [pdf-file]
Pointers and Memory Allocation, Deallocating Dynamic Memory, Common Uses for Pointers, Arrays and Pointers, Pointers to Character Strings
8.03
week02.htm
department.cpp
3. 11

Inheritance I
Base and Derived Classes, Calling the Base-Class Constructor, Calling Base-Class Member Function

15.03
Debugging
gdb quick ref
sqrtest2.cpp
week03.htm
clocks1.cpp
clocks2.cpp
4. 11

Inheritance II
Polymorphism

22.03
week04.htm
week04.doc
Homework_1
clocks3.cpp
5. -
Test_1 29.03
week05.htm
week05.doc

6. 12
Streams I
Reading and Writing Text Files, The Inheritance Hierarchy of Stream Classes, String Streams,  Command Line Arguments, Random Access
5.04
Exam of practice_1
maxval1.cpp
maxval2.cpp
readtime.cpp
7. 12

Streams II
String Streams,  Command Line Arguments, Random Access

12.04
week07.htm
week07.doc
caesar.cpp
database.cpp
8. 13

Object-Oriented Design
The Software Life Cycle, CRC Cards, Cohesion, Coupling, Relationships between Classes, Implementing Associations, Example: Printing an Invoice, Example: An Educational Game

19.04
week08.htm
week08.doc
Homework_2
clock.cpp
invoice.cpp
invoice_design.cpp
9. 14
Recursion
Triangle Numbers, Permutations, Thinking Recursively, Recursive Helper Functions, Mutual Recursion, The Efficiency of Recursion
26.04
week09.htm
week09.doc

10. -
Test_2 3.05
week10.htm
week10.doc

11. 15

Sorting and Searching I
Selection Sort, Profiling the Selection Sort Algorithm, Analyzing the Performance of the Selection Sort Algorithm, Merge Sort

10.05
Exam of practice_2

12. 15
Sorting and Searching II
Analyzing the Merge Sort Algorithm, Searching, Binary Search, Searching and Sorting Real Data
17.05
week12.htm
week12.doc

13. 17

Advanced C++ Topics I
Operator Overloading, Automatic Memory Management

31.05
week13.htm
week13.doc
Homework_3
overload.cpp
overload1.cpp
department.cpp
14. 17
Advanced C++ Topics II
Templates, Exception Handling
7.06
week14.htm
week14.doc
pairs.cpp
exception1.cpp
exception2.cpp
product1.cpp
product2.cpp
15. -
Final test 14.06
Final exam of practice