LAN-TC-01 Edisi ke 2 : Tatacara Kelulusan Bagi Kursus Pengajian Institusi Pendidikan Tinggi Swasta (IPTS) Bagi Peringkat Sijil, Diploma dan Ijazah Sarjana Muda.
1. Title of Subject
Object Oriented Programming
2. Subject code
ECP4146
3. Status of subject
Elective
4. Stage
Degree
5. Version
Date of Previous Version : May 2000, November 2003, December 2004
Date of Current Version : June 2005
6. Credit Hour
3
EAC Credit Hours Equivalent
3.43 (3 + 0.43)
3 represents lectures (3 hours per week 14 weeks)
0.43 represents assignment, tutorials or labs (3 hours of assignments/tutorials, 9 hours of labs)
7. Pre-Requisite
ECP1016: Computer and Program Design
8. Teaching Staff
Tutor
Dr. Ian Chai, Ph.D.(Comp. Sc.), M.Sc.(Comp. Sc.), B.Sc.(Comp. Sc.)
Azrul Hasni bin Madisa, Masters (INSA Rouen, France) - Information System Architecture Bachelor (IUT de Châteauroux, France) - Electrical Engineering and Industrial Computer Science
Chan Mun Leong, B.Eng(Telecommunications)
9. Semester
Year, Trimester 1
10. Aim of Subject
To introduce C++ language and the basic concepts of OOP
Comparison of procedure oriented, structure oriented and object oriented programming paradigms - top-down design - algorithm development - refining algorithms - fundamental of object oriented design - identifying classes - attributes and behavior - features of object oriented programming.
6
C++ Fundamentals
Standard I/O streams - function prototypes - C++ enhancements to C - Default function parameters - inline functions - overloaded functions - reference variables comparison between pointers and references.
6
Classes
Creating new data type in C++ - class declaration - members - constructors and destructors - access functions constant objects - member objects - static members - friend classes - arrays of class objects.
6
Dynamic Memory Allocation
Free store - new and delete operators - class with pointer members - this pointer assignment - initialization - copy constructor - passing and returning objects - advanced free store techniques - exception handling.
6
Inheritance and Polymorphism
Operator overloading - handling related types in C++ - derived class - conversion between base and derived classes - virtual functions - dynamic binding - pure virtual functions - protected members - public and private base classes - new, delete operators overloading - inheritance applications.
8
Advanced C++ Concepts and Applications
File handling - templates - container classes - class library - stack, queue and linked list applications - simple database applications.
7
Basic OO Design using UML
Introduction to UML - Development Process - Use Cases - Class Diagrams - Interaction Diagram (sequence and collaboration) - Object Diagrams - State Diagrams - Activity Diagrams - Deployment Diagram - Case Studies
3
14. Teaching and
Learning Activities
This subject will be delivered using the following means: