CSIE 180459

Fall 2013

Object-Oriented Programming
Announcements |  General Information |  Schedule

Announcements:

Instructor:

Teacher Assistant (TA):

Textbook

Reference:

Course Description:

Topics include:

  1. C++ Object Model
  2. Classes and Objects
  3. Constructors and Destructors
  4. Inheritance
  5. Virtual Functions and Polymorphism
  6. Operator Overloading
  7. Exceptions
  8. Generic Programming
  9. Standard Template Library
  10. Term Project

Prerequisites:

Grading policy

  1. Homework 50%
  2. Midterm Exam 25%
  3. Final Exam 25%

Examinations:

Schedule(Return to top of page)

Week Course Material Covered Code / Homework 
01 (09.09-09.13, 1 hrs) How to solve it
Note︰開學大掃除 (09/09)
02 (09.16-09.20, 3 hrs) How to solve it
Example: applying how to solve it (math vector in C)
inner product round 1
inner product round 2
Homework #1
How to submit HW
03 (09.23-09.27, 3 hrs) Annotations Ch 7: class - member function, data member, public, private,
dynamic memory allocation and deallocation,
constructors and destructors
 inner product round 3
04 (09.30-10.04, 3 hrs) Annotations Ch 9: memory allocation and deallocation
Overloading operator [] (Annotations Ch 4)
runtime memory model
Parameter passing, copy constructor
Homework #2
05 (10.07-10.11, 3 hrs) Unit testing with CppUnitLite
Refactoring the vector program
Test project and production project
inner product round 4
inner product round 5
06 (10.14-10.18, 3 hrs) Matrix and vector
Annotations Ch 6: Streams and File I/O
Homework #3
matrix6
Hw1 Solution
07 (10.21-10.25, 3 hrs) Responsibility assignment
makefile
08 (10.28-11.01, 3 hrs) Annotations Ch 5: Strings 
Homework #4
matrix7
Hw2 Solution
Hw3 Solution
09 (11.04-11.08, 3 hrs) Midterm Exam: 10:10 am - 11:10 am, Monday, 11/4, 2013.
Annotations Ch 10
Handling bugs as exceptions: unit testing vector::operator []
matrix8

10 (11.11-11.15, 3 hrs) Handling user exceptions
matrix9
11 (11.18-11.22, 3 hrs) University 1
Annotations Ch 18 STL
std::vector, std::sort
University in class
Homework #5
12 (11.25-11.29, 3 hrs) relationship - *, &, and object
Classes, responsibilities, and collaborations
Code in class:
  University11252013
  University11272013
13 (12.02-12.06, 3 hrs) Annotations Ch 21: Templates
University 2: more classes
university ppt
University 12022013
University 12042013
Homework #6  See the blog. Due date 13 Dec 2013, 5 pm.
Homework #5 solution
14 (12.09-12.13, 3 hrs) Acceptance testing with Robotframework
Robotframework
15 (12.16-12.20, 3 hrs) Managing dependencies
Acceptance testing with Robotframework
University 12162013
RobotframeworkExample2
University 12182013
Homework #6 solution
16 (12.23-12.27, 3 hrs) Annotations Ch 13: Inheritance
Annotations Ch 14: Polymorphism and Virtual Functions
Homework #7
University3
Shape Code from class (read the file blah.txt)
17 (12.30-01.03, 2 hrs) Where to go from there: Introduction to Scrum
Note︰開國紀念日放假 (01/01)
Scrum
18 (01.06-01.10, 3 hrs) Final Exam 10:10 am - 11:40 am, Monday, 6 Jan 2014.