Computer Science
21 courses · Orange Coast College · 2026-2027 Catalog
Classes: Fall 2026 · Spring 2027
CS A100 Survey of Computer Science and Programming
- Units
- 3
- Hours
- 36 lecture hours; 54 lab hours
- Transfers to
- 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.
CS A122 Programming Concepts and Methodology 1
- Units
- 3
- Hours
- 36 lecture hours; 54 lab hours
- Advisory
- Computer Information Systems A090 or A100 or A111.
- Transfers to
- 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
CS A131 Python Programming I
- Units
- 3
- Hours
- 27 lecture hours; 81 lab hours
- Advisory
- CIS A090; and CIS A100 or CIS A111.
- Transfers to
- CSU, UC
- C-ID
- COMP 112
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.
CS A132 Data Structures in Python
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- Computer Science A122 or A131. CS A122 or CS A131.
- Transfers to
- CSU, UC
- C-ID
- COMP 132
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.
CS A150 C++ Programming Language 1
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- CS A100 or CS A122 or CS A131 or CS A170.
- Transfers to
- CSU, UC
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.
CS A170 Java Programming 1
- Units
- 3
- Hours
- 27 lecture hours; 81 lab hours
- Advisory
- CIS A090; and CIS A100 or CIS A111.
- Transfers to
- CSU, UC
- C-ID
- COMP 122
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.
CS A200 Data Structures
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- CS A150 and CS A250.
- Transfers to
- CSU, UC
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.
CS A216 Computer Architecture
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- CS A150; and CS A100, CS A122, CS A131 or CS A170.
- Transfers to
- 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.
CS A220 Software Engineering
- Units
- 4
- Hours
- 54 lecture hours; 54 lab hours
- Prerequisite
- CS A150; and CS A100, CS A122, CS A131 or CS A170.
- Transfers to
- 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.
CS A231 Python Programming II
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- CS A131.
- Transfers to
- CSU, UC
Advanced Python programming. Covers classes, modules, using the Python standard library and using third-party libraries.
CS A242 Computer Organization and Assembly Language
- Units
- 3
- Hours
- 54 lecture hours
- Advisory
- CS A100, CS A122, CS A131, CS A150, or CS A170.
- Transfers to
- CSU, UC
- C-ID
- COMP 142
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.
CS A250 C++ Programming Language 2
- Units
- 4
- Hours
- 54 lecture hours; 54 lab hours
- Prerequisite
- CS A150; and CS A100, CS A122, CS A131 or CS A170.
- Transfers to
- 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.
CS A253 Principles in System Design
- Units
- 4
- Hours
- 72 lecture hours
- Prerequisite
- CS A150 and CS A170.
- Transfers to
- CSU, UC
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.
CS A253L Principles in System Design Lab
- Units
- 1
- Hours
- 54 lab hours
- Prerequisite
- CS A150 and CS A170.
- Transfers to
- 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.
CS A255 Cybersecurity Foundations and Principles
- Units
- 3
- Hours
- 36 lecture hours; 54 lab hours
- Transfers to
- 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).
CS A257 Boolean Algebra and Logic
- Units
- 3
- Hours
- 54 lecture hours
- Prerequisite
- CS A131, CS A150, or CS A170.
- Transfers to
- 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.
CS A262 Discrete Structures
- Units
- 3
- Hours
- 36 lecture hours; 54 lab hours
- Prerequisite
- CS A100, CS A122, CS A131, CS A150, or CS A170.
- Transfers to
- CSU, UC
- C-ID
- COMP 152
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.
CS A263 Probability and Statistics for Computer Science
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- CS A131, CS A150, or CS A170; and MATH A180.
- Transfers to
- 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.
CS A272 Java Programming 2
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- CS A170.
- Transfers to
- CSU, UC
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.
CS A275 Data Structures in Java
- Units
- 4
- Hours
- 63 lecture hours; 27 lab hours
- Prerequisite
- CS A170.
- Transfers to
- CSU, UC
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.
CS A280 Current Topics in Computing
- Units
- 1-4
- Hours
- 18-72 lecture hours
- Transfers to
- CSU
Course covers topics currently receiving attention by the computer industry.