Syllabus
Programming Fundamentals II

Programming Fundamentals II

COSC-1337

Credit Summer 2020
06/01/2020 - 08/02/2020

Course Information

Section 006
Distance Learning
MW 08:55 - 11:10
ONL DIL
Karam Mossaad

Section 006
Laboratory
MW 11:10 - 11:55
ONL DIL
Karam Mossaad

Office Hours

No office hours have been entered for this term

Course Requirements

Course Requirements:

 

  2 Exams                600 Points

10 Labs                   200 Points

10 Homework        200 Points

                         1000 Points

Readings

Approved Course Texts/Readings:

 

Starting Out with C++ Early Objects, 10th Edition, Gaddis, Walters, and Muganda,

 Pearson, · Print ISBN: 9780135235003, 0135235006

                 · e-text ISBN: 9780135236963, 0135236967

Course Subjects

 

Course Description:  This course is an introduction to the C++ programming language and its subset, the C programming language.  Program structure, block, storage types, console and file I/O, functions, arrays, strings, pointers, call-by-reference, call-by-value, and dynamic memory allocation will be discussed.  The concept and use of classes will be covered in some detail.   

Student Learning Outcomes/Learning Objectives

 

Course Objectives/Learning Outcomes:

Demonstrate a thorough understanding of modular programming by designing programs that require the use of programmer-defined functions.

  1. Demonstrate a thorough understanding of arrays by designing and implementing programs that search and sort arrays.
  2. Demonstrate a thorough understanding of the object-oriented programming concepts of encapsulation, data abstraction and composition by designing and implementing classes including the use of overloaded functions and constructors.
  3. Demonstrate a thorough understanding of the concept of pointers and dynamic memory allocation by designing and implementing programs using pointers and dynamic memory allocation.
  4. Demonstrate a thorough understanding of the implementation of programmer-defined functions and classes by writing code, performing unit testing and debugging of multiple complex programs.                                                                
  5. Demonstrate good documentation style in all of the programs written in this course.
  6. Demonstrate proficiency in implementing data validation code, performing unit testing, and developing test plans while implementing robust solutions to the assignments in this course.
  7. Demonstrate a thorough understanding of stream input/output for both console and files.
  8. Demonstrate an understanding of the differences between C and C++ in the areas of strings, pass by reference/passing pointers, and structs by designing and implementing programs that use C strings, C++ strings, C language structs and classes.