CISC211 Object Oriented C++

Department of Science, Technology, Engineering & Mathematics: Computer/Information Science

I. Course Number and Title
CISC211 Object Oriented C++
II. Number of Credits
4 credits
III. Minimum Number of Instructional Minutes Per Semester
3000 minutes
IV. Prerequisites
CISC122 (C or better)
V. Other Pertinent Information
VI. Catalog Course Description
This course introduces the advanced programming techniques in C++ utilizing digital game programming. It will introduce students to C++ object oriented programming, as well as OpenGL and its components.
VII. Required Course Content and Direction
  1. Learning Goals:

    Course specific

    The students will be able to:
    1. develop a working knowledge of the concepts of Object Oriented Programming (OOP);
    2. apply the concepts of OOP software design principles;
    3. apply C++ concepts, such as inheritance, data abstraction, and polymorphism;
    4. demonstrate programming ability using C++ and Open GL; and
    5. skillfully apply essential programming concepts in the completion of lab assignments.
  2. Planned Sequence of Topics and/or Learning Activities:

    1. C++ overview
      1. Basic Syntax
        1. Variables, Constants, and Calculations
        2. Keywords
        3. Control Structures
      2. Advanced Pointers
      3. Standard Template Library
      4. Polymorphism
      5. Inheritance

    2. Open GL Overview

    3. Game Architecture
      1. Real Time Software Design
      2. Game Logic
      3. Rendering

    4. Data Structures
      1. Structures
      2. Classes
      3. Linked Lists
      4. Stacks
      5. Queues
      6. Tables
      7. Trees

    5. User Input
      1. Keyboard
      2. Mouse
      3. Joystick

    6. Artificial Intelligence
      1. System Structure
      2. Core Technologies
        1. Finite State Machines
        2. Rule Systems
      3. Planning and Problem Solving
      4. Action Oriented AI

    7. 2D Game Programming
      1. 2D Data Structures
      2. Sprite Based Characters
      3. Mapping Matrices
      4. Basic 2D Algorithms
      5. Special Effects
      6. Collision Detection
  3. Assessment Methods for Core Learning Goals:

    This course is not in the Core.

    The assessment of Course Learning Goals is based on participation in class discussions, written tests, labs, and other assignments, as well as performance-based tasks as appropriate.

  4. Reference, Resource, or Learning Materials to be used by Students:

    Departmentally selected textbook. Details provided by the instructor of each course section. See course format.
VIII. Teaching Methods Employed
Class time will be devoted to classroom lecture, guided discovery in the laboratory, and discussion.

Review/Approval Date - 2/08