Course Descriptions

CS 101 – Computer Concepts

(3) F, S – CSU, UC*

Skills Advisories: MATH 100 and Eligibility for ENG 103

Survey of the concepts of computer hardware and software, with emphasis on the latest technologies

and programming. Topics include, but are not limited to, the Internet, productivity applications, databases, programming and numbering systems. Suitable for all majors and is a recommended first course for Computer Science majors.. (*UC transfer limit: 101 combined with CIS 101: maximum credit, one course.)

 

CS 111 – HTML, Web Technologies and Webmastering

(3) F, S – CSU

Skills Advisories: Eligibility for ENG 103

Webmastering is studied and Web technologies are used to create pages that are posted to an Internet-accessible server. Technologies studied include Hypertext Markup Language (HTML), Frames, Virtual Reality Modeling Language (VRML), Forms, Common Gateway Interface (CGI), Cascading Style Sheets (CSS), Extensible Markup Language (XML), Extensible Stylesheet Language (XSL), Wireless Application Protocol (WAP), and Wireless Markup Language (WML).

 

CS 115 – JavaScript and Dynamic HTML

(3) F, S – CSU

Skills Advisories: Eligibility for ENG 110 or ENG 110H Course Advisories: CS 111 Project-oriented introduction to JavaScript programming and using JavaScript with Cascading Style Sheets to implement cutting-edge Web page  effects with Dynamic HTML.

 

CS 116–Web Server Programming

(3) F, S–CSU

Skills Advisories: Eligibility for ENG 110 or ENG 110H Course Advisories: CS 111 or CS 120

Project-oriented class that explores programming a Web server using PERL, Active Server Pages (ASP), Personal Home Pages (PHP), Tool Control Language (TCL) and Python, with an emphasis on PERL, and PHP. Class develops Common Gateway Interface (CGI) scripts and Internet applications using these common tools. Includes such topics as e-commerce, security, browser independence and database integration.

 

CS 120–Java Programming

(3) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 101 or CIS 101

Study of the object-oriented programming using the Java programming language. Topics include classes, encapsulation, inheritance, packages and methods. Students implement applets that incorporate graphics, sound and animation for use on the World Wide Web and in the engineering of larger systems.

 

CS 122–Java Mobile Device Programming

(1.5) F, S–CSU

Skills Advisories: Eligibility for ENG 110 or ENG 110H Course Advisories: CS 120 or CS 125

The use of Java in developing applications for wireless devices such as mobile phones and personal digital assistants. Students use mobile device frameworks to create user interfaces and access data from databases, XML documents and web services.

 

CS 125–C# Programming

(1.5) F, S–CSU

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 120 or CS 140

Study of the programming language C# (C sharp). Definition of data types, loop control structures, functions, parameter passing, pointers, recursion, records, data structures, object-oriented techniques, the .NET framework, exception handling, interfaces, scoping rules and supplied system objects.

 

CS 126–Microsoft Mobile Device Programming

(1.5) F, S–CSU

Skills Advisories: Eligibility for ENG 110 or ENG 110H Course Advisories: CS 120 or CS 125

The use of C# in developing applications for wireless devices such as mobile phones and personal digital assistants. Students use mobile device frameworks to create user interfaces and access data from

databases, XML documents and web services.

 

CS 127–ASP.net Using C#

(1.5) S–CSU

Course Advisories: CS 125

Study of the use of C# in developing Active Server Page (ASP)-based dynamic websites. The use of the .NET framework, working with data and XML, error handling, ASP.net server controls, custom controls and optimizing applications.

 

CS 128–Flash Programming

(1.5) F–CSU

Skills Advisories: Eligibility for ENG 110 or ENG 110H Course Advisories: CS 120 or CS 125

The use of Flash in developing applications for the Internet and mobile devices. Students use the Flash  development environment to create applications with animated user interfaces that can access information from web services and XML documents.

 

CS 129–J2EE Server Programming

(1.5) F, S–CSU

Course Advisories: CS 120

Project-oriented introduction to Java 2 Enterprise Edition (J2EE) Web application development. Students learn to design, build and deploy Web applications. Servlets, Java Server Pages, Java DataBase Connectivity, JavaMail, eXtensible Markup Language processing and Enterprise JavaBeans are investigated.

 

CS 130–Introduction to UNIX

(1.5) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 101

Survey of the UNIX/Linux operating system and related subject matter. Topics include UNIX/Linux architecture, commands, file system, processes, and bash shell environment. Lectures and computer laboratory exercises provide a moderate-depth understanding of UNIX/Linux architecture and commands from a computer science perspective.

 

CS 131–Assembly Language Programming

(4) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 135 Introduction to basic computer organization using Assembly language. Topics include computer hardware, machine language, data representation, binary manipulations, Boolean algebra, digital logic circuits, computer architecture and design. Assembly language programs developed on the college ' s computer. (CAN CSCI 10)

 

CS 135–Programming Fundamentals

(3) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 101

Study of fundamental programming concepts. Topics include structured and OOP programming, definition

of data types, nested IFs, looping techniques, CASE statements, procedures, functions, value and address parameters, file structures, dynamic list structures and recursion. (CAN CSCI 12)

 

CS 137–C Programming

(3) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 131 or CS 135

Study of the programming language C. Definition of data types, loop controls structures, functions, parameter passing, pointers, recursion, records data structures, object-oriented techniques and the UNIX operating system. (CAN CSCI 16)

 

CS 140–Object-Oriented Programming Using C++

(4) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 120 or CS 137

Study of the object-oriented programming paradigm, including objects, messages, encapsulation, classes, inheritance and implementation issues. Implementations written in the object-oriented language C++. (CAN CSCI 18)

 

CS 143–Discrete Math

(4) F, S–CSU

Skills Advisories: Eligibility for ENG 103 and MATH 120

Introduction to the study of discrete objects, with a focus on applications in computer science. Topics include logic and proofs, sets, functions, sequences, sums, algorithms, integers, induction, recursion, counting, relations, graphs and trees.

 

CS 145J–Introduction to Data Structures

(3) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 120 or CS 135

Study of data structures and algorithms. Design, coding and testing of linked lists, trees, queues, stacks, hash tables, and other dynamic data structures, as well as searching and sorting algorithms. Time and space analysis of data structures and algorithms. Programs are written in the Java language.

 

CS 145P–Introduction to Data Structures

(3) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 103 Course Advisories: CS 135

Study of data structures and algorithms. Design, coding and testing of linked lists, trees, queues, stacks, hash tables, and other dynamic data structures, as well as searching and sorting algorithms. Time and space analysis of data structures and algorithms. Programs are written in the Pascal language.

 

CS 165–Software Design Patterns

(1.5) F, S–CSU

Skills Advisories: Eligibility for ENG 110 or ENG 110H Course Advisories: CS 120 or CS 140

Introduction to software design patterns and their use in object-oriented systems. Creational, structural and behavioral patterns are investigated. Real world examples by acknowledged experts are studied. Students strengthen their software design skills by applying patterns in course projects. State of the art development tools are used throughout the course.

 

CS 180–Software Engineering with UML

(3) F, S–CSU, UC

Skills Advisories: Eligibility for ENG 110 or ENG 110H Course Advisories: CS 120

Study of software engineering and component-based design using the Unified Modeling Language (UML). Students employ a standard software engineering process that includes requirements analysis, design, implementation and testing. Students learn about various UML diagrams and use them to express software requirements and designs. The course investigates rapid application development using stateof-the-art tools and component libraries.

 

CS 190–Video Game Programming

(3) F, S

Course Advisories: CS 137

Introduces students to programming video games for personal computers. The main platforms examined are DirectX and OpenGL on personal computers. Issues include responsiveness (latency), graphics compatibility, sound, event synchronization and I/O devices.