We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2
University Of Buea
CSC305 Course Outline
Faculty Name Faculty of SCIENCE Department Name : COMPUTER SCIENCE Course title Object-Oriented Programming in C++ Course Code CSC305 Department Code: CSC Academic Year 2024/2025 Semester 1 Name of Instructor Roger Mawoh/ Benedict Mbungang S/N Week Topic Activity Course overview, syllabus, textbooks.; Designation of course delegate; Project / Assignment details Recall: C++: programming environment, functional programming, Data structures, control statements, functions and recursion, pointer and the THIS pointer ; Dev C++ Environment (IDE) Practical (Installation of software); OOP vs Procedural Programming; OO 1 1 Poblem solving. L C++ As a Better C: C++ enhancement of C (Non-OOP); Declarations and Definitions in C++, scope operator, inline functions, Default function arguments, Function declaration and definition, reference operator, 2 1 new/delete, 2D-arrays, function overloading. L C++ As a Better C: Funtion template, operator overloading, namespace, standard c++ header files, using cout object, using cin object, std 3 2 namespace, bool type, constant, cast operator. L 4 2 Tutorial T Deadline: Assignment of students to project groups (completed) OOP Programming Concepts: Class, Inheritance, Polymorphism; Class definition; Defining methods as inline functions, Defining dynamic objects, Defining array of objects, Controlling access to members, friend 5 3 functions and friend classes, this pointer. L 6 3 Application. P Initialising and Finalising Objects: Constructors:- Default constructor, Constructor wit parameters, multiple constructors, initialising arrays of objects, constructor initialisers; Destructors; Copy constructor; Static class members; passing objects to functions as arguments, avoiding temporary objects, Composition (classes as members of other classes), composition 7 4 and aggregation, Working with multiple files. L 8 4 Tutorial. T 5 Operator Overloading: operator overloading, limitations, overloading the + P operator, overloading the assignment operator, copy sonstructor vs assignment operator, overloading unary operators, overloading the [] operator, overloading the () operator, overloading post and pre increment operators. 5 Application. T Inheritance: reusability in object oriented programming, is-a relationship, inheritance syntax, redefining members, overloading vs overriding, access control, protected vs private members, public inheritance, private 9 6 inheritance. P Inheritance: redefining access, special member functions and inheritance, Constructors and inheritance, Destructors and inheritance, assignment operator and inheritance, composition vs inheritance, multiple inheritance, 10 6 Virtual base classes. L 11 7 Application. P 12 7 CA (All) L Object Pointers: pointers to objects, linked list of objects, pointers and inheritance, Polymorphism: Normal member functions access with pointers, virtual member functions accessed with pointers, late binding, 13 8 Abstract classes, pure virtual classes, virtual destructors. P 14 8 Application. L Templates: Introduction and function template, Overloading function templates and class templates , Nontype parameters and default types for class templates, Templates and inheritance , Templates and friends , 15 9 Templates and static members. L 16 9 Application. L Input/output Streams: classic Versus standard stream, Stream I/O classes 16 10 and objects, Stream manipulators, Stream format states. L 17 10 Application. P Exceptions handling: Overview, When to use exception, Constructors, destructors and exceptions, Exception and inheritance, Stack unwinding, 18 11 Standard library exception. L 19 11 Application. P 20 12 C++ Library: Standard library (STD), Standard template library (STL) L Data structures and abstract data types: Self-referential classes, DMA and data structures, Linked lists, stacks and queues, Trees. Test II (or 21 12 Presentation of Final Project I, if any) L 22 13 Tutorial/CA T 23 13 Revision (optional) / Slack for recovery T