Advanced Programming – CSIS 112

CG • Section 8WK • 11/08/2019 to 04/16/2020 • Modified 07/28/2020

Course Description

Continuation of CSIS 111. Further development of discipline in program design, especially for larger programs. Introduction of pointers, simple data structures, recursion, internal sort/search methods. Programming assignments are required. (Formerly CSCI 112)

Prerequisite

CSCI 111 or CSIS 111

Rationale

This course provides a continuation to the language introduced in CSIS 111. It introduces additional language concepts, including pointers, classes, and inheritance. It also emphasizes software engineering concepts relevant to larger programs, such as code reuse, encapsulation, incremental development and testing, and provides an introduction to data structures. This course is essential to completing an understanding of the language that will be used in subsequent CSIS courses or C++ application development.

Measurable Learning Outcomes

Upon successful completion of this course, the student will be able to:

  1. Discuss the relevance of course material and the use of technology to a biblical worldview
  2. Describe fundamental terminology for overloading, pointers, dynamic memory utilization, inheritance, polymorphism, and recursion.
  3. Describe how the object-oriented paradigm supports top-down algorithm design and stepwise refinement of software development.
  4. Develop solutions in C++ using encapsulation.
  5. Create solutions in C++ using pointers and dynamic memory allocation.
  6. Implement solutions in C++ using inheritance.
  7. Design solutions in C++ using polymorphism.
  8. Produce solutions in C++ using recursion.

Course Assignment

Textbook readings and lecture presentations

Course Requirements Checklist

After reading the Course Syllabus and Student Expectations, the student will complete the related checklist found in Module/Week 1.

Discussion Board Forums (2)

Discussion boards are collaborative learning experiences. Therefore, the student will create a thread in response to the provided prompt for each forum. Each thread must be at least 300 words and demonstrate course-related knowledge. In addition to the thread, the student will reply to the threads of at least 2 classmates. Each reply must be at least 150 words. At least 1 citation must be included in each thread and reply. Current APA formatting is required for any citations.

C++ Programming Assignments (8)

Using Visual Studios Community 2017, the student will complete 8 programming assignments that will give him or her an opportunity to demonstrate mastery of the lessons learned during the assigned or previous module/week.

Quizzes (7)

Each quiz will cover the Reading & Study material for the module/week in which it is assigned as well as the preceding modules/weeks. Each exam will be open-book/open-notes and will have a time limit of 45 minutes. Each quiz will contain a variety of 20 multiple-choice and true/false questions.

Final Exam

The student will complete a comprehensive Final Exam which will cover all the material from the course. This exam will be open-book/open-notes, contain a variety of 80 multiple-choice and true/false questions and have a time limit of 2 hours.