Academic Catalogs

Computer Science

​​​​​​​​​

The Computer Science (CS) department at Orange Coast College prepares students for transfer to four-year university programs. Students who have completed the CS program at OCC have successfully transferred to UC Irvine, UC San Diego, UC Berkeley, UC Santa Cruz, UC Davis, CSU Fullerton, CSU Long Beach, and Cal Poly Pomona. 

Our two-year program teaches Java, C++, and Python, and includes courses on data structures, computer architecture, and software engineering. In addition to a Computer Science Certificate of Achievement and an Associate of Science degree, we offer Certificates of Specialization in Java, C++, and Python to help students find entry-level positions and internships in the computing field.

Department Contact Information

Gabriela Ernsberger, Department Chair
gernsberger@occ.cccd.edu

Computer Science Department Website

Credit Courses

CS A1003 Units (36 lecture hours; 54 lab hours)  
Survey of Computer Science and Programming  
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
An introduction to the intellectual enterprises of computer science and the art of programming, for majors and non-majors, with or without prior programming experience. Topics include computational thinking, abstraction, algorithms, data structures, and computer science generally. This course teaches you how to program with an introduction to C, Python, SQL, HTML, CSS and JavaScript.

Catalog Program Pages Referencing CS A100

CS A1223 Units (36 lecture hours; 54 lab hours)  
Programming Concepts and Methodology 1  
Advisory: Computer Information Systems A090 or A100 or A111.
Grading Mode: Standard Letter
Transfer Credit: CSU, UC.
Introduction to the discipline of Computer Science using a high-level language utilizing programming and practical hands-on problem solving. The first course for students seeking the Computer Science AS-T transfer degree. C-ID COMP 122

Catalog Program Pages Referencing CS A122

CS A1313 Units (27 lecture hours; 81 lab hours)  
Python Programming I  
Advisory: CIS A090; and CIS A100 or CIS A111.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU; UC.
Introduction to fundamental concepts and techniques for writing software in Python. Topics include the syntax and semantics of data types, expressions, input/output, exception handling, functions and parameter passing, control structures (decision and repetition), built-in data structures (lists, tuples, strings, dictionaries, and sets), randomness, object-oriented programming with classes, inheritance, polymorphism, recursion, and the pragmatics of programming. C-ID: COMP 112.

Catalog Program Pages Referencing CS A131

CS A1324 Units (63 lecture hours; 27 lab hours)  
Data Structures in Python  
Prerequisite(s): Computer Science A122 or A131. CS A122 or CS A131.
Grading Mode: Standard Letter
Transfer Credit: CSU; UC.
This course emphasizes the design, implementation, and analysis of fundamental data structures and object-oriented programming using the Python programming language. Topics include arrays, stacks, queues, linked lists, trees, hashing, graphs, recursion, inheritance, polymorphism, and algorithm complexity. Students develop algorithms for searching, sorting, pattern matching, and tree operations such as traversal and balancing. This is the second course in the Computer Science AS-T transfer sequence. This course may be offered online. PREREQUISITE: CS A122 or CS A131. C-ID: COMP 132.

Catalog Program Pages Referencing CS A132

CS A1504 Units (63 lecture hours; 27 lab hours)  
C++ Programming Language 1  
Prerequisite(s): CS A100 or CS A122 or CS A131 or CS A170.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
First course in ANSI/ISO Standard C++ programming language. Topics include data types, strings, operators, expressions, control flow, input/output, functions, pointers, arrays, preprocessor, streams, enumerated data type, dynamic memory allocation, objects, classes, vectors, inheritance, object-oriented design and recursion.

Catalog Program Pages Referencing CS A150

CS A1703 Units (27 lecture hours; 81 lab hours)  
Java Programming 1  
Advisory: CIS A090; and CIS A100 or CIS A111.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: A.
Introduction to fundamental concepts and techniques for writing software in Java. Students will build Java applications that focus on the syntax and semantics of data types, expressions, input/output, exception handling, functions and parameter passing, control structures (decision and repetition), and arrays, as well as object-oriented programming with classes, inheritance, polymorphism, and recursion. C-ID: COMP 122.

Catalog Program Pages Referencing CS A170

CS A2004 Units (63 lecture hours; 27 lab hours)  
Data Structures  
Prerequisite(s): CS A150 and CS A250.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
A study of data abstraction and algorithm analysis. Data structures include lists, stacks, queues, trees, tables, and graphs. Algorithms include searching, sorting, pattern-matching, tree traversal, and balancing. This is a core course for students who want to study advanced programming, computer science, or engineering.

Catalog Program Pages Referencing CS A200

CS A2164 Units (63 lecture hours; 27 lab hours)  
Computer Architecture  
Prerequisite(s): CS A150; and CS A100, CS A122, CS A131 or CS A170.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU; UC.
A course in the architecture of computers. Topics will include Boolean algebra and computer arithmetic, digital logic, micro and macro architecture, Assembly language, performance, datapath and control, memory hierarchies, interfacing and peripherals, and multiprocessing.

Catalog Program Pages Referencing CS A216

CS A2204 Units (54 lecture hours; 54 lab hours)  
Software Engineering  
Prerequisite(s): CS A150; and CS A100, CS A122, CS A131 or CS A170.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
Introduction to the concepts, methods, and current practice of software engineering. Study the lifecycle of a software system. Employ engineering methods, processes, techniques, and measurement. Use of tools to manage software development. Project work is required to illustrate the various elements.

Catalog Program Pages Referencing CS A220

CS A2314 Units (63 lecture hours; 27 lab hours)  
Python Programming II  
Prerequisite(s): CS A131.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU; UC.
Advanced Python programming. Covers classes, modules, using the Python standard library and using third-party libraries.

Catalog Program Pages Referencing CS A231

CS A2423 Units (54 lecture hours)  
Computer Organization and Assembly Language  
Grading Mode: Standard Letter
Transfer Credit: CSU; UC.
Introduction to the organization and behavior of real computer systems at the assembly-language level. Topics include studying the mapping of statements and constructs in a high-level language onto sequences of machine instructions, as well as the internal representation of simple data types and structures, and examining numerical computation to note various data representation errors and potential procedural errors. C-ID: COMP 142.

Catalog Program Pages Referencing CS A242

CS A2504 Units (54 lecture hours; 54 lab hours)  
C++ Programming Language 2  
Prerequisite(s): CS A150; and CS A100, CS A122, CS A131 or CS A170.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
Second course in ANSI/ISO Standard C++ programming language. Topics include sorting and searching, data structures, operator overloading, memory management, exception handling, name scope management, polymorphism, templates, STL containers, STL algorithm and iterators, and functional programming.

Catalog Program Pages Referencing CS A250

CS A2534 Units (72 lecture hours)  
Principles in System Design  
Prerequisite(s): CS A150 and CS A170.
Grading Mode: Standard Letter
Transfer Credit: CSU.
Introduces basic principles of system software: operating systems, compilers, and networking. Exposure to the following topics through theoretical and practical programming experiences: linking and loading, process and memory management, concurrency and synchronization, network communication, programming for performance.

Catalog Program Pages Referencing CS A253

CS A253L1 Unit (54 lab hours)  
Principles in System Design Lab  
Prerequisite(s): CS A150 and CS A170.
Grading Mode: Standard Letter
Transfer Credit: CSU; UC.
This lab is required by four-year institutions, coupled with CS A253, to satisfy lower-division work that prepares students for upper-division work in Computer Science.

Catalog Program Pages Referencing CS A253L

CS A2553 Units (36 lecture hours; 54 lab hours)  
Cybersecurity Foundations and Principles  
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
This course introduces the principles and practices of cybersecurity, including security goals, systems, access control, networks, cryptography, authentication, and common attack types. Emphasis is placed on management considerations, industry and government standards, and security issues across the system lifecycle—from design and implementation to operation and maintenance. The course also aligns with the three fundamental Knowledge Units (KUs) defined by the National Centers of Academic Excellence in Cyber Defense (CAE-CD): Cybersecurity Foundations (CSF), Cybersecurity Principles (CSP), and Information Systems Components (ISC).

Catalog Program Pages Referencing CS A255

CS A2573 Units (54 lecture hours)  
Boolean Algebra and Logic  
Prerequisite(s): CS A131, CS A150, or CS A170.
Grading Mode: Standard Letter
Transfer Credit: CSU; UC.
An introduction to the discrete structures used in Computer Science. Topics covered include basic logic, proof techniques, relations, Boolean algebra, logic gates, languages and grammars, finite-state machines, and Turing machines.

Catalog Program Pages Referencing CS A257

CS A2623 Units (36 lecture hours; 54 lab hours)  
Discrete Structures  
Prerequisite(s): CS A100, CS A122, CS A131, CS A150, or CS A170.
Grading Mode: Standard Letter
Transfer Credit: CSU; UC.
An introduction to the discrete structures used in Computer Science with an emphasis on their applications. Topics covered include functions, relations, sets, basic logic, proof techniques, basics of counting, graphs, trees, and discrete probability. C-ID: COMP 152.

Catalog Program Pages Referencing CS A262

CS A2634 Units (63 lecture hours; 27 lab hours)  
Probability and Statistics for Computer Science  
Prerequisite(s): CS A131, CS A150, or CS A170; and MATH A180.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU; UC.
Introduction to probability and statistics with an emphasis on their applications in Computer Science. Topics include continuous and discrete probability distributions, linear and logistic regression, creating models to use for predictive inference, and programmatic analysis of data.

Catalog Program Pages Referencing CS A263

CS A2724 Units (63 lecture hours; 27 lab hours)  
Java Programming 2  
Prerequisite(s): CS A170.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
A second course in the Java programming language. Topics include object-oriented design, inheritance, interfaces, abstract and anonymous inner classes, recursion, 1/0 & exceptions, generics, Java collections, stacks, queues, lists, trees, lambda expressions and streams. This course may also be offered online. May be taken for grades or on a pass-no pass basis.

Catalog Program Pages Referencing CS A272

CS A2754 Units (63 lecture hours; 27 lab hours)  
Data Structures in Java  
Prerequisite(s): CS A170.
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: A.
This course covers object-oriented programming, data abstraction, and algorithm analysis, with emphasis on data structures such as linked lists, stacks, queues, trees, and graphs. Students learn both their direct implementation and their application using Java Collections. Algorithms include searching, sorting, pattern matching, tree traversals, and balancing. It is intended for students pursuing a degree in Computer Science or a related field and is required for the state Computer Science AS-Transfer (AST) degree.

Catalog Program Pages Referencing CS A275

CS A2801-4 Units (18-72 lecture hours)  
Current Topics in Computing  
Grading Mode: Standard Letter, Pass/No Pass
Transfer Credit: CSU.
Course covers topics currently receiving attention by the computer industry.

Catalog Program Pages Referencing CS A280