CP222 - Computer Science II

Study of the design and implementation of computer programs in Java at the intermediate level with a focus on object-oriented programming. Foundational concepts that lead towards formal discussion of software design (e.g. design patterns), analysis of algorithms (e.g. asymptotic complexity), and computer architecture (e.g. stack/heap memory) are introduced in this course. Students will use data structures and other tools to build robust, efficient, extensible programs that utilize Graphical User Interfaces (GUIs). The concepts behind multi-threaded programming are also introduced. Students will also deepen their understanding of how computers manipulate memory and execute programs. Meets the Critical Perspectives: Quantitative Reasoning requirement. Meets the Critical Learning: FRL requirement.

Prerequisite: Computer Science 122.

Degree requirement — Critical Learning: FRL, Critical Perspectives: Q

1 unit — Ellsworth

Offerings

Term Block Title Instructor Location Student Limit/Available Updated
Fall 2023 Block 2 Computer Science II Danielle Ellsworth Armstrong Hall 2 25 / 0 05/24/2024
Spring 2024 Block 5 Computer Science II Blake Jackson Tutt Science Building 223 25 / 7 05/24/2024
Fall 2024 Block 1 Computer Science II Topic Details Danielle Ellsworth TBA 25 / 11 05/24/2024
Spring 2025 Block 6 Computer Science II Topic Details Danielle Ellsworth TBA 25 / 25 05/24/2024
Report an issue - Last updated: 05/24/2024