CSC 175: Intermediate Computer Programming

4 credits

Students explore object-oriented programming principles and techniques for solving problems. Students study class relationships (composition, inheritance, polymorphism, data-abstraction), file processing, exception handling, recursion, use of built-in language specific data structures. Students develop software-engineering skills and habits; develop a variety of applications that require storing, processing, sorting and searching data collections.

Learning Goals

• Students will create, navigate through, and update objects inside collections. This objective will be measured by all course assessments. • Students will create driver and blueprint classes. This objective will be measured by all course assessments. • Students will apply standard programming conventions to create readable code that would be easy to maintain. This objective will be measured by all course assessments. • Students will code test cases and use unit testing tools and be introduced to test driven development techniques. This objective will be measured by all course assessments.• Students will create programs using composition, abstraction, interfaces, inheritance, exception handling and file processing. This objective will be measured by assignments 1 - 7, the midterm, and final project.• Students will solve written problems by designing objects and algorithms and then implementing those designs. This objective will be measured by all course assessments.• Students will construct and update structured objects. This objective will be measured by assignments 3&4 and the final project. • Students will trace recursive calls and write recursive algorithms. This objective will be measured by assignment 8, and the midterm examination. • Students will program using an integrated development environment to carry out a design-code-test-debug cycle. This objective will be measured by all course assignments.• Students will exercise step-wise refinement and method decomposition. This objective will be measured by all course assessments.• Students will design small UML class diagrams involving “is a” and “has a” relationships. This objective will be measured by the final examination. • Students will develop software involving several classes that interact together. This objective will be measured by the final project. • Students will use a change control system. This objective will be measured by the final project.• Students will implement and trace at least 2 searching algorithms. This objective will be measured by assignment 9, the midterm, the final examination and the final project.• Students will use and trace at least 2 sorting algorithms. This objective will be measured by assignment 10, the final examination and the final project.• Students will use and trace code involving at least 2 predefined data structures. This objective will be measured by assignments 11&12, the final examination and the final project.

*The learning goals displayed here are those for one section of this course as offered in a recent semester, and are provided for the purpose of information only. The exact learning goals for each course section in a specific semester will be stated on the syllabus distributed at the start of the semester, and may differ in wording and emphasis from those shown here.

Sections Offered: Fall 2026

Intermediate Computer Programming
Course No. Day Credits Expand details

Search Menu