2024-25 University Bulletin [ARCHIVED CATALOG]
|
CSC (0145) 175 - Intermediate Computer Programming Credits: 4.00
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.
Prerequisite 1: CSC 171 Repeatable: Yes Grade Type: Regular Free Note: Students must register for both lec (CLC) and lab sections. Grade of C- or better in CSC 171.
Course Learning Goals: This course is designed to develop a set of skills that will be necessary for success in the upper-division courses in Computer Science.
• 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.
|