Computer Science Minor


Required Courses (Prerequisites in parentheses)

CS 120 Introduction to Website Development
CS 122 Using Relational Databases and SQL
CS 242 C Programming (Math 103 or consent of the instructor)
CS 245 Introduction to Computer Organization, Operating Systems and Networks (CS 201, CS 202)
CS 342 Object Oriented Programming Using C++ (CS 242)

Electives: 8 units of upper division electives

Information about course offerings can be obtained on the Computer Science departmental webpage.

Note that the required courses have some hidden prerequisites (CS 201, 202) that may double count for some majors. In addition, since only 8 units of electives are required, we will list additional courses that can deepen a particular focus, and which may be useful courses to be taken if your major has free electives. For specific selections of courses that best complement your major, as well as information about which courses can double count for major and minor, click on the icon that represents the desired major/minor combination.

mathbio mathmicrobio mathchem mathbiochem mathcs mathcs
Biology Major, Computer Science Minor Microbiology Major, Computer Science Minor Chemistry Major, Computer Science Minor Biochemistry Major, Computer Science Minor Mathematics Major, Computer Science Minor Physics Major, Computer Science Minor

In the listing below, the number of units for a course a noted in square brackets at the end of each course listing. Any course without a unit listing is a 4-unit course.

The following two courses are key courses for many of the other upper division electives:

CS 203 Programming with Data Structures (Math 103; recommended Math 206, Math 207, Math 208) [5]
Note that CS 203 does not count toward the 8 units of Upper Division electives, but is a prerequisite to many of the suggested course sequences.

CS 312 Data Structures and Algorithms (CS 203, Math 206, Math 207, Math 208, Math 248)

Upper Division courses with no additional prerequisites beyond the required courses:
CS 340 Assembly Language and Systems Programming
CS 451 Multimedia Software Systems

Upper Division courses with additional prerequisite CS 203 only:
CS 301 Computer Ethics in the Information Age [1]
CS 320 Web and Internet Programming [3]
CS 332C Object-Oriented Programming with C++ [2]
CS 332F Functional Programming [2]
CS 332L Logic Programming [2]
CS 337 Software Design [3]
CS 345 UNIX and Shell Programming
CS 370 Parallel and Distributed Programming

Upper Division courses with additional prerequisite CS 312 only:
CS 422 Principles of Data Base Systems
CS 440 Introduction to Operating Systems
CS 460 Artificial Intelligence
CS 461 Machine Learning
CS 470 Computer Networking Protocols
CS 480 Cryptography and Information Security

Upper Division courses with multiple additional prerequisites:
CS 350 Foundations of Computer Graphics (Math 206, Math 207, Math 208, Math 248) [5]
CS 386 Introduction of Automata Theory (Math 206, Math 207, Math 248)
CS 420 Web Applications Architecture (CS 203, CS 320, Math 103)
CS 437 Software Design (CS 312, GWAR) [5]
CS 447 Computer Networks Configuration and Management (CS 440)
CS 450 Computer Graphics (CS 312, CS 350, Math 255)
CS 454 Topics in Advanced Computer Science (prerequisites vary by topic)
CS 486 Computability and Intractability (CS 386)
CS 488 Compilers (CS 312, CS 332, CS 386)
CS 496A Software Design Laboratory (CS 312, CS 320, CS 337, CS 386) [2]
CS 496B Software Design Laboratory (CS 312, CS 320, CS 337, CS 386, CS 496A) [2]
CS 496C Software Design Laboratory (CS 312, CS 320, CS 337, CS 386, CS 496B) [2]
CS 499 Undergraduate Directed Study (instructor consent, prerequisites may vary) [1-4]

Number of visitors: