Park University Logo

Park.edu Home > Information and Computer Science > template

CS 225: Programming Concepts

Course Description:
This course continues the development of the programming and problem solving skills introduced in CS 219. Programming concepts will be put into practice by using C++ for programming projects. Since C++ is so similar to Java and since students should already know Java from their prerequisite courses, this course will cover C++ basics (control constructs, operators, data types, functions) very quickly. More time will be spent on those features of C++ that differ from Java. For example, more time will be spent on pointers, object-oriented programming techniques, and operator overloading. Prerequisite: a grade of 'C' or better in CS 219. 3:0:3

Learning Outcomes:
Upon completion of this course the student should be able to:

  1. Explain basic C++ constructs (this should be covered quickly since basic C++ constructs are similar to basic Java constructs, which are covered in CS 151 and CS 219).
  2. Explain basic object-oriented programming concepts (this should be covered quickly since basic OOP concepts are covered in CS 151 and CS 219).
  3. Explain these programming concepts:
    • Pointers
    • Parameter passing - call-by-value vs. call-by-reference
    • Operator overloading
    • Inheritance - public, protected, and private access specifiers
  4. Demonstrate creativity and problem-solving skills.
  5. Use the Visual C++ integrated development environment to enter, run, and debug C++ programs.
  6. Write C++ programs that use proper style and documentation.
  7. Demonstrate proper use of the object-oriented principle of inheritance.
    • Given a problem description, the student should be able to decide on appropriate classes in a class hierarchy tree.
  8. Demonstrate proper use of the object-oriented principle of composition.
    • Given a description that involves two classes, the student should be able to decide on whether composition or inheritance is more appropriate.
  9. Write C++ programs that use:
    • Preprocessor directives
    • Functions - call-by-value vs. call-by-reference parameters, inline functions, default arguments
    • Arrays - one-dimensional and two-dimensional
    • Pointers
    • Strings
    • Operator overloading
    • Inheritance - public, protected, and private access specifiers
  10. Optional - upon completion of this course the student should be able to write C++ programs that use:
    • UML, polymorphism, virtual functions, templates, exception handling, file I/O

Assessment Measures:

Assessment Tool Linkage to Learning Outcome #:
   
Homework Assignments:
Assign a sufficient amount of homework such that all of the above objectives are covered. All
For each homework assignment, include one or more of:
short answer, multiple choice, trace the given code, debug the given code
1-3, 9
For each homework assignment, include one or more programming projects. 1, 2, 4-10
In order to meet the "creativity and problem-solving skills" objective, the student must be required to produce programming project solutions from given problem descriptions. Note that this objective is not met if a student is able to produce solutions only by pasting together given code fragments. Although pasting code fragments together is sometimes appropriate, it does not enforce the development of creativity and problem-solving skills. 4
   
Visual C++ IDE Tutorial:  
In working through the Visual C++ IDE tutorial, the student will use Visual Studio to enter, execute, and debug C++ programs. Upon completion of the tutorial, the student will submit the completed program. 5
   
Exams:  
Include one or more of:
short answer, multiple choice, trace the given code, debug the given code.
1, 4, 8
Given a problem description, produce a solution in the form of a short program or a method(s). 2, 6-8

Textbooks
To view the approved textbook list, click here.

^ Back to the Top

---------------------------------

University Resources


This page was last modified on Cannot perform flastmod(): Win32 Error Code = 2