- Theory: explain and analyze standard computer science algorithms and describe and analyze theoretical aspects of various programming languages
- Application: apply problem-solving skills to implement medium- and large-scale programs in a variety of programming languages
- Systems: describe the interactions between low-level hardware, operating systems, and applications
- Project: demonstrate effective communication and organization as part of a team of software developers or researchers collaborating on a large computer program
20 units of lower-division courses, 20 units of upper division courses, and 12 units of mathematics
Students majoring in Computer Science must earn a grade of C or better in all of the mathematics and computer science courses fulfilling requirements for the major. A student can repeat no more than two Mathematics or Computer Science courses required in the major, and a course can be repeated only one time. A withdrawal counts as an attempt at a course without passing or earning a minimum grade required in the course.