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 A1314 Units (90 lecture hours)  
Python Programming I  
Advisory: CIS A090; and CIS A100 or CIS A111.

Grading Mode: Standard Letter

Transfer Credit: CSU; UC.

Introduction to fundamental concepts and techniques for writing software in the Python programming language. Covers the syntax and semantics of data types, expressions, exceptions, control structures, Input/output, methods, classes, and pragmatics of Python programming. C-ID: COMP 112.

Catalog Program Pages Referencing CS A131

CS A1404 Units (63 lecture hours; 27 lab hours)  
Introduction to C#.NET Programming  
Advisory: CIS A100 or CIS A111.

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: CSU; UC.

Provides students with a background in the object-oriented approach of the C#.NET language. Emphasis is on variables, methods, control structures, arrays, objects, classes, file I/O, database and Windows Forms. This course may also be offered online. May be taken for grades or on a pass-no pass basis. Lecture/Lab. Graded or Pass/No Pass option.

Catalog Program Pages Referencing CS A140

CS A1424 Units (63 lecture hours; 27 lab hours)  
Introduction to Visual Basic.NET Programming  
Advisory: CIS A100 or CIS A111.

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: CSU; UC.

An object-oriented approach to the Visual Basic .NET language with an emphasis programming fundamentals: variables, expressions, methods, control structures, arrays, objects, classes, file I/O, database, Windows and Web Forms. Provides preparation for students Microsoft certification. This course may also be offered online. Graded or Pass/No Pass option.

Catalog Program Pages Referencing CS A142

CS A1504 Units (90 lecture hours)  
C++ Programming Language 1  
Prerequisite(s): CS A131, CS A140, CS A142, or CS A170.

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: 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. Graded or Pass/No Pass option. This course may also be offered online.

Catalog Program Pages Referencing CS A150

CS A1704 Units (63 lecture hours; 27 lab hours)  
Java Programming 1  
Advisory: CIS A090; and CIS A100 or CIS A111.

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: CSU; UC.

A first Computer Science course taught using the Java programming language. Students will build Java applications. Emphasis will be placed on programming fundamentals such as variables, selection and loops as well as object-oriented programming concepts including classes and inheritance. This course may also be offered online. Graded or Pass/No Pass option. C-ID: COMP 122.

Catalog Program Pages Referencing CS A170

CS A2004 Units (90 lecture hours)  
Data Structures  
Prerequisite(s): CS A150 and CS A250.

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: 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. Graded or Pass/No Pass option.

Catalog Program Pages Referencing CS A200

CS A2164 Units (90 lecture hours)  
Computer Architecture  
Prerequisite(s): CS A150 and 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. Graded or Pass/No Pass option. Five hours.

Catalog Program Pages Referencing CS A216

CS A2204 Units (90 lecture hours)  
Software Engineering  
Prerequisite(s): CS A150 and CS A170.

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: CSU; UC.

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. Graded or Pass/No Pass option.

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

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 A2504 Units (90 lecture hours)  
C++ Programming Language 2  
Prerequisite(s): CS A150; and CS A131 or CS A140 or CS A170.

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: CSU; UC.

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. Graded or Pass/No Pass option.

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; 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 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 (90 lecture hours)  
Cybersecurity Foundations and Principles  

Grading Mode: Standard Letter, Pass/No Pass

Transfer Credit: CSU.

Cybersecurity is the science of protecting users and systems against hackers, malware, and other threats permeating modern day cyberspace. This course covers the theoretical foundations of cybersecurity, such as the concepts of confidentiality, integrity, and availability, and access control models, as well as the principles and practices of system, information, and network security. Graded or Pass/No Pass option.

Catalog Program Pages Referencing CS A255

CS A2573 Units (54 lecture hours)  
Boolean Algebra and Logic  
Prerequisite(s): CS A131, CS A140, 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 A131, CS A140, 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 or CS A140 or 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. Graded or Pass/No Pass option.

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; UC.

A second course in Java programming language. Topics include object-oriented design, inheritance, interfaces, abstract and anonymous inner classes, I/O & exceptions, generics, regular expressions, databases, XML, GUI construction, graphics and multimedia, Java collections, data structures, lambda expressions and multithreading. This course may also be offered online. Graded or Pass/No Pass option.

Catalog Program Pages Referencing CS A272

CS A2734 Units (63 lecture hours; 27 lab hours)  
Mobile Application Development  
Prerequisite(s): CS A150 and CS A170 or CS A272.

Grading Mode: Standard Letter

Transfer Credit: CSU; UC.

This course covers how to develop Apple iOS and Android apps for smartphones and tablets using open-source IDEs (Integrated Development Environments). Topics include mobile app IDEs, MVC (Model-View-Controller) architecture, programming languages, data management, user interface elements, event handling, testing, and publishing. Students will leverage their knowledge of OOP (Object-Oriented Programming) knowledge to build mobile apps from start to finish.

Catalog Program Pages Referencing CS A273

CS A2801-4 Units (18-72 lecture hours; 0-54 lab 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. This course may also be offered online. Graded or Pass/No Pass option. This course may be taken four times.

Catalog Program Pages Referencing CS A280