CPSC 123 - Introduction to Object Oriented Programming C++

This course introduces basic and advanced concepts of object oriented programming using C++.  The content of this course include programming of C++, control flow, arrays, classes and objects, structures, operator overloading, strings, pointers and dynamic arrays, namespaces, streams and file I/O, recursion, inheritance, polymorphism, linked data structures,  exception handling, and standard template library. Purpose of this course is to build programming concepts with object oriented  language and its application toward engineering and other fields. 


Credits:  4


Hours: 90 (Lecture Hours: 45;  Laboratory Hours: 45)


One of Principles of Math 12, Foundations 12, Pre-Calculus 12, Math 050 or CPSC 111


Non-Course Prerequisites:




Course Content:
- C++ Basics
- Control Flow
- Parameters and Overloading
- Arrays
- Structures and Classes
- Constructors and Other Tools
- Operator Overloading, Friends, and References
- Strings
- Pointers and Dynamic Arrays
- Separate Complimentation And NameSpaces
- Streams and File I/O
- Recursion
- Inheritance
- Polymorphism and Virtual Functions
- Templates
- Linked Data Structures
- Exception Handling
- Standard template Library
- Patterns and UML


Learning Outcomes:
Apply object oriented programming concepts with C++.
Analyze, design, write, compile, test, implement, deploy, and debug C++ program.
Identify and use primitive and user defined data types.
Describe function with function definition, function parameter, function return, and function call.
Write simple program and modular program using concepts of function, structure, class, object, and standard template library.
Decide and use control structure, functions, recursion, conditional and iterative constructs.
Write programs using concepts of arrays, structures, strings, pointers, namespace, recursion, inheritance, overloading, overriding, polymorphism, simple I/O, streams and file I/O, templates, exception handling and linked data structures.
Hands on experience with procedural high level language and object oriented language concepts.
Strategize to design a modular program.
Utilize the concepts of simple data structure and dynamic data structure.
Write an object oriented program with C++ convention, documentation, indentation, restrictions, and standards.
Create templates and use standard template library.


Grading System:  Letter Grades


Passing Grade: 


Textbooks are subject to change. Please contact the bookstore at your local campus for current book lists.