CS 119: Principles of Programming II
Credit hours: (3)
Instructional Method: Two hours lecture; two hours laboratory
A rigorous, systematic approach to object-oriented problem solving and programming.
Note(s): General Education and Scientific and Quantitative Reasoning Designated Course.
Students may not receive credit for both ITEC 120 and the sequence ITEC 118:ITEC
119. Students may not attempt to take ITEC 119 more than two times (a “W” will count
as an attempt).
Detailed Description of Content of Course
Topics include:
- Testing and debugging
- Object oriented programming techniques: methods, fields; getters, setters, mutators;
introduction to subclasses
- Algorithmic problem solving including functional decomposition
- Introduction to algorithms (linear search; an example of sorting)
Detailed Description of Conduct of Course
Class lecture and discussion sessions present and explain problem solving techniques
and standard algorithms, illustrated with examples. In the laboratory students learn,
with faculty guidance, to solve programming problems and to implement their solutions.
Students are also required to solve, code, test and debug problems without direct
faculty guidance.
Goals and Objectives of the Course
Students who complete the course will be able to
- Design, implement, test, and debug a program in an object-oriented language that uses
each of the following fundamental programming constructs: basic computation, simple
I/O, standard conditional and iterative structures, methods and constructors.
- Apply the techniques of structured (functional) decomposition to break a program into
smaller pieces, and describe the mechanics of passing parameters by value.
- Choose the appropriate data types (primitive types, strings, objects, and arrays thereof)
for modeling a given problem
- Write methods with parameters and return types that are primitive types, strings,
objects, or arrays thereof.
- Test and debug programs by: Developing test cases and writing a separate driver class
to test the methods of a class; desk-checking individual methods; inserting relevant
print statements to discover program behavior.
- Answer basic questions about professional and ethical considerations of developing
software, information privacy, and acceptable use policies for computing in the workplace.
Assessment Measures
Student achievement is measured by written tests and evaluation of homework and programming
assignments.
Reviewed and approved: June, 2022
Review and Approval
August, 2022
January 24, 2024