30220372 (Programming Projects)

Course Name: Programming Projects

Course Number: 30220372

Program: Undergraduate program

Type: Required

Credits: 2

Term Offered: Summer

Prerequisite(s): fundamental of C language programming

Instructor(s): Zongxiang Lu, Yu Shen

Textbook(s):

Haoqiang Tan, C++ and OOP Programing, Tsinghua University Press, 2006. (in Chinese)

Reference(s):

Wanpeng Xue, Tutorial of C++ Progamming, China Machine Press, 2000 (in Chinese).

Course Description:

     The course is project based training course on software programming using C++ language and OOP method. The basic principle of Object Oriented Programming (OOP) will be analyzed deeply in this course.

Course Objectives and Outcomes:

     Numbers in brackets are linked to department educational outcomes

1.Students should skillfully master the C++ language programming method. [1, 2]

2.Students are in touch with large software designation method. [1, 2, 11]

3.Students are familiar with debugging codes. [11]

Course Topics:

1.Basics of C++ language.

2.Fundamental of Class and Object.

3.Deeply understanding the Class.

4.Template & Overloading.

5.Inheritance.

6.Polymorphism.

7.Issues about practical software programming.

8.Debugging codes.

9.I/O flow and files.

Experiment(s):

Project(s):

Construct the Complex class and its member functions of arithmetic

 Understand the concept of class and object, the basic elements of class (member data and member function).

Construct the Date class and apply to the description of date information

 Use knowledge learned in class and object to construct complex application of several classes.

Operator overloading of Complex class

 Use knowledge learned in Overloading and Inheritance to finish a program of complex data arithmetic.

Project training of BBS development

 Synthetically use knowledge learned in course to finish developing a simple BBS system.

Course Assessment:

       Homework measures, 50 points.

       Programming project measures, 50 points.