School
Business, Entrepreneurship, and Professional Development
Division
Computer Technology
Department
Computer Information Systems
Academic Level
Undergraduate
Course Subject
Computer Information Systems
Course Number
230
Course Title
C++ Programming
Credit Hours
3.00
Instructor Contact Hours Per Semester
62.00 (for 15-week classes)
Student Contact Hours Per Semester
62.00 (for 15-week classes)
Grading Method
A-E
Pre-requisites
CIS-170
Catalog Course Description
An advanced-level course expanding upon arrays, pointers, structures, templates, and file I/O. Test Driven Development (TDD), refactoring, and UML diagrams concepts are applied. Covers theory and application in areas such as the standard template libraries including vectors, lists, stacks, queues, sets, and maps. Object oriented principles of classes, data, inheritance and dynamic binding are covered.
Goals, Topics, and Objectives
Core Course Topics
- C++ Basics
- Functions
- Parameters and Overloading
- Arrays
- Structures and Classes
- Constructors
- TDD (Test Driven Development) and Refactoring
- UML Diagrams
- Operator Overloading, friends, and references
- Strings
- Pointers and Dynamic Arrays
- Inheritance
- STL's (vectors, lists, stacks, queues, sets, and maps) and Iterators
- Polymorphism
Core Course Learning Objectives (Separated)
- Input, compile and execute a C++ program using basic programming concepts.
- Design and create a program using functions.
- Create a program using separate compilation, prototypes and header files.
- Demonstrate the use of structures.
- Code, manipulate and utilize character strings.
- Demonstrate proficient use of linear and multidimensional arrays.
- Declare, initialize and manipulate pointers.
- Create and use references.
- Develop a program using TDD.
- Demonstrate refactoring.
- Develop programs from UML diagrams.
- Demonstrate proficient use of operator overloading.
- Demonstrate proficient use of arrays of pointers.
- Design and create a program using function pointers.
- Design and create classes, subclasses and objects.
- Explain and demonstrate the use of STL’s (vectors, lists, stacks, queues, sets, and maps) and iterators.
- Demonstrate proficient use of exception handling.
- Demonstrate proficient use of Constructor and destructor functions.
- Demonstrate proficient use of friend classes and functions.
- Create and use the NEW and DELETE operators.
Assessment and Requirements
Assessment of Academic Achievement
Assessment of academic achievement may include (but is not limited to) written exams, hands-on activities and programs.
Effective Term
Fall 2020