Computer Science (CS)

CS 111
Introduction to Programming Concepts and Design
4 Units (AA/AS; CSU; UC)
72 lecture hours
Equivalent to: CSIS 110, CSIS 111

Grade Mode: Pass/No Pass, Standard Letter

Strongly recommended: ENGL 099 if required by English placement exam or if required by English level.

An introduction to the principles of computer programming and software development. Topics covered include the program development cycle, developing algorithms, data and control structures, structured programming, and object-oriented programming. Data types, expressions, control structures, functions, file and stream I/O, and structured and abstract data types are introduced in this course. Microsoft's Visual Studio to help illustrate programming concepts common to modern high-level programming languages. Students must wait two years before retaking this course.

CS 140
Java Programming
3 Units (AA/AS; CSU; UC)
54 lecture hours, 18 lab hours
Equivalent to: CSIS 140

Grade Mode: Pass/No Pass, Standard Letter

Prerequisite(s): CS 111.

Strongly recommended: MATH 150.

An introduction to the Java language and object oriented programming. General concepts and techniques of computer programming to be covered include expressions, flow control, methods, program structure, Java classes, overloading, object references, inheritance, Java library packages, exceptions, file I/O, applets, GUI, and event handling.

CS 157
iOS Programming I
3 Units (AA/AS; CSU)
54 lecture hours

Grade Mode: Standard Letter

Prerequisite(s): CS 225.

Introduction to iOS programming using Apple's Swift programming language. Students will learn to develop applications that can be run on Apple's iPhone, iPads, Apple Watch and the Apple TV. Students will use the Xcode IDE to develop iOS Apps.

CS 177
Unity Game Programming I
3 Units (AA/AS; CSU)
54 lecture hours

Grade Mode: Standard Letter

Strongly recommended: CS 225.

This is the first course in Unity game programming using the C# programming language. The goals of this course are to provide introductions to event driven programming, game engine scripting, game engine class structures, learning to plan and to report on a significant programming project, learn how to work in programming teams, and learn to use standard game development environments, in particular the Unity3D development platform.

CS 225
Object Oriented Programming
3 Units (AA/AS; CSU; UC)
54 lecture hours, 18 lab hours
Equivalent to: CSIS 225

Grade Mode: Standard Letter

Strongly recommended: CS 111; also, MATH 142 or MATH 150.

This course introduces the discipline of computer science using a high level language utilizing programming and practical hands-on problem solving. Topics include the use of functions and parameter passing, simple I/O, control structures, user-defined data types, arrays, searching and sorting, algorithms and debugging strategies, data abstraction, concept of types and software development methods.

CS 232
Programming Concepts and Methodology II
3 Units (AA/AS; CSU)
54 lecture hours, 18 lab hours

Grade Mode: Standard Letter

Prerequisite(s): CS 225.

Application of software engineering techniques to the design and development of large programs; data abstraction and structures and associated algorithms.

CS 242
Computer Architecture and Organization
3 Units (AA/AS; CSU; UC)
54 lecture hours

Grade Mode: Standard Letter

Prerequisite(s): CS 225 (or concurrent enrollment).

The organization and behavior of real computer systems at the assembly-language level. The mapping of statements and constructs in a high-level language onto sequences of machine instructions is studied, as well as the internal representation of simple data types and structures. Numerical computation is examined, noting the various data representation errors and potential procedural errors.

CS 252
Discrete Structures
3 Units (AA/AS; CSU; UC)
54 lecture hours

Grade Mode: Standard Letter

Prerequisite(s): CS 225.

This course is an introduction to the discrete structures used in Computer Science with an emphasis on their applications. Topics covered include: functions, relations and sets; basic logic; proof techniques; basics of counting; graphs and trees; and discrete probability.

CS 257
iOS Game Programming I
3 Units (AA/AS; CSU)
54 lecture hours

Grade Mode: Standard Letter

Prerequisite(s): CS 157.

This course deals with 2D game programming for the iOS platform. Students are expected to have Xcode and Swift programming experience.

CS 277
Unity Game Programming II
3 Units (AA/AS; CSU)
54 lecture hours

Grade Mode: Standard Letter

Prerequisite(s): CS 177.

This is the second course in Unity game programming using the C# programming language in the Unity 3D development environment. Topics include scripting, simple AI, animations, and path finding.