| Computer Science |
CS
100. Introduction to Computer Science
CS 100M. Introduction to Computers Using Macs
CS 101. Intro to Information Systems
CS 110A. Intro to Programming: C++
CS 110B. Programming Fundamentals: C++
CS 110C. Data Structures and Algorithms: C++
CS 111A. Intro to Programming: Java
CS 111B. Programming Fundamentals: Java
CS 111C. Data Structures and Algorithms: Java
CS 112A. Intro to Visual Basic.NET
CS 112B. Visual Basic.NET Object-Oriented
CS 112D. Visual Basic.NET w/ Databases
CS 113A. Introduction to Perl Programming
CS 113B. Object Oriented Perl Programming
CS 114B. Programming Fundamentals I/C#
CS 130A. PHP Programming
CS
130B. Advanced PHP Programming
CS
131A. Python Programming
CS
132A. Ruby Programming
CS
132R. Ruby on Rails Workshop
CS
141. Mastering Regular Expressions
CS
142. Programming Techniques for XML
CS 150A. Intro to Databases Using T-SQL
CS 151A. Oracle SQL Databases
CS 151B. Oracle Database Administration
CS 151P. Oracle PL/SQL Programming
CS 152A. Programming SQL Server Using Transact-SQL
CS
155A. MySQL Databases
CS
155B. MySQL Database Administration
CS 155P. Programming with MySQL
CS 159A. Database Design and Modeling
CS 160A. Introduction to Unix/Linux
CS 160B. Unix/Linux Shell Scripting
CS 161. C for Unix and Linux
CS
162. Linux Installation
CS
170A. Principles of Artificial Intelligence
CS 170P. Prolog Programming
CS
172X. Programming with Online Data
CS 176. Systems Analysis and Design
CS
177. Software Engineering
CS
180. Designing Interactive Applications with Flash
CS 183A. Multimedia Tools
CS 183B. Flash Game Programming I
CS 183C. Advanced Multimedia Programming
CS
183F. Flex Programming
CS
198. Industry Internship
CS 199. Independent Study
CS 211E. Advanced Java: Enterprise Edition
CS 211G. Game Programming in Java
CS 211M. Advanced Java: Micro Edition
CS 211S. Advanced Java: Standard Edition
CS
211V. Graphics Programming in Java
CS 232. Ruby on Rails Development
CS 260A. Unix/Linux System Administration
CS
261A. Unix/Linux Systems Programming
CS
261B. Advanced Unix/Linux Systems Programming
CS
262. Unix/Linux Network Programming
CS
267. Unix and Linux Security
CS 270. Computer Architecture with Assembly Language
CS
ORAX. Oracle and XML
CS
ORBX. Oracle Object-Relational Database Concepts
CREDIT, DEGREE APPLICABLE COURSES:
CS 100. Introduction to Computer Science (3)
Lec-3, lab-1
Introduction to computer science. Emphasis is on algorithms, hardware
design, system software, computer organization, data representation, language
models, theory of computation and social issues. Students learn algorithms
and use programming techniques to solve problems. CSU/UC
CS 100M. Introduction to Computers Using Macs
(3)
Lec-3, lab-3
P/NP available
A computer literacy course using Macintosh computers. Prepares students
to use computers to write papers, organize information, and use e-mail.
Overview of computer components such as hardware, software and data. Fundamentals
of the Finder and applications such as word processing, spreadsheets and
the Internet. Students use computers to complete class assignments. CSU/UC/CAN
CSCI 2
CS 101. Intro to Information Systems (3)
Lec-3, lab-0.5
Introduction to the uses and technology of computers. Emphasis
is on the vocabulary of computer systems, hardware, software, networks,
data representation and manipulation, communications, the Internet, ethics
and privacy issues, and developments and trends. Survey of job opportunities
in the computer field and how computers are used in business, research
and government. Students use a computer application (spreadsheet)
as a problem-solving tool and use macros and Visual Basic for Applications
to learn programming fundamentals. CSU/UC
CS 110A. Intro to Programming: C++ (3)
Lec-3, conf-1, lab-3
Advise: MATH
840
Intro to computer programming and problem-solving. No prior programming
experience required. Concepts include: problem-solving techniques, program
design, charting, control structures, data structures, algorithms, use
of the C++ programming language, a programming environment and hardware.
Using computers and other methods to complete assignments. CSU/UC
CS 110B. Programming Fundamentals: C++ (3)
Lec-3, conf-1, lab-3
PREREQ.: CS 110A
This course covers pointers, arrays with structured elements, file
handling, dynamic memory allocation, and building abstract data types.
Programming assignments require planning, good coding practices, and documentation.
Applications include both numerical and non-numerical problems. CSU/UC/CAN
CSCI 22
CS 110C. Data Structures and Algorithms:
C++ (3)
Lec-3, conf-1, lab-3
PREREQ.: CS 110B
A course in the analysis and design of computer algorithms and the
underlying data structures using an object-oriented approach. Analysis
in the timing and efficiency of algorithms. Study of lists, stacks,
queues, trees, searching, sorting, and recursion. Introduction to
graphs, tables, hashing, and direct access files. Further study of
ADTs. CSU/UC/CAN
CSCI 24
CS 111A. Intro to Programming: Java (3)
Lec-3, conf-1, lab-3
Advise: MATH
840
Intro to computer programming and problem solving. No prior programming
experience required. Course concepts include: problem solving techniques,
program design, charting, control structures, data structures, algorithms,
use of the Java programming language, a programming environment and hardware.
Students use computers and other methods to complete assignments. CSU/UC
CS 111B. Programming Fundamentals: Java (3)
Lec-3, conf-1, lab-3
PREREQ.: CS 110A or 111A
A continuation of the concepts and principles introduced in CS 110A,
using Java as the programming platform. Classes, objects, references, arrays,
files, dynamic memory allocation, inheritance, design and implementation
of abstract data types. Programming assignments require planning, good
coding practices, documentation. An object-oriented approach to problem-solving
and program development. Numerical and non-numerical applications. Students
will construct both applets and standalone applications. CSU/UC
CS 111C. Data Structures and Algorithms: Java
(3)
Lec-3, conf-1, lab-3
PREREQ.: CS 111B
The analysis and design of computer algorithms and their underlying
data structures using an object-oriented approach. Analysis of the timing
and efficiency of algorithms. Study of lists, stacks, queues, trees, backtracking,
searching, sorting and recursion. Introduction to graphs, tables, hashing,
heaps, priority queues, and direct access files. Further study of abstract
data types and object-oriented programming. CSU/UC
CS 112A. Intro to Visual Basic.NET (3)
Lec-3, conf-1, lab-3
P/NP available
Advise: MATH
840
A beginning course in computer programming and problem solving using
Visual Basic.NET. Students develop Windows-oriented application programs
with emphasis on standard programming concepts and algorithms, interface
design, and event processing using the .Net development platform. CSU/UC
CS 112B. Visual Basic.NET Object-Oriented (3)
Lec-3, conf-1, lab-3
P/NP available
PREREQ.: CS 112A
A continuation of CS 112A. Design and implementation of classes, objects,
abstract data types, arrays, and collections. Use of inheritance, polymorphism,
and structured exception handling. Development of Windows-oriented application
programs with emphasis on object-oriented programming concepts and techniques.
CSU
CS 112D. Visual Basic.NET w/ Databases (3)
Lec-3, conf-1, lab-3
P/NP available
PREREQ.: CS 112A or experience programming with
Visual Basic; and CS 150A or 151A
or 155A
or experience writing SQL queries
Advise: CS 112B
An intermediate course in computer programming and problem solving
using Visual Basic.NET and ADO.NET. Students develop Windows-oriented application
programs that interface with databases (SQL Server, Access, or Oracle)
using the ADO.NET data access model. CSU
CS 113A. Introduction to Perl Programming (3)
Lec-2, conf-1, lab-3
P/NP available
Advise: CS 160A
An introduction to the interpreted language called Perl, the Practical
Extraction and Report Language. Recommended for anyone working with files
and text. This course covers the semantics and syntax of the Perl language,
and includes discussion on the practical kinds of problems that Perl can
solve and provides examples. Students write stand-alone programs that perform
various tasks, including text and file manipulation. CSU/UC
CS 113B. Object Oriented Perl Programming (3)
Lec-2, conf-1, lab-3
PREREQ.: CS 113A
A continuation of the concepts and principles introduced in CS 113A,
Introduction to Perl Programming using an objected-oriented approach to
problem solving and program development. Packages, objects, references,
nested data structures, advanced regular expressions, CGI and DBM topics
are covered. Students write stand-alone and CGI programs to solve common
data processing and system administration tasks. CSU
CS 114B. Programming Fundamentals I/C# (3)
Lec-3, conf-1, lab-3
P/NP available
PREREQ.: CS 110A or 111A
or 112A,
or similar programming experience
A continuation of the concepts and principles introduced in CS 110A
or 111A. It covers programming using the C# language and the .NET / Common
Language Runtime platform. Students will learn Object Oriented software
design techniques, and construct Graphical User Interface applications.
CSU
CS 130A. PHP Programming (3)
Lec-3, conf-1, lab-3
P/NP available
Advise: CNIT
132 or demonstration of CNIT 132 exit skills; and CS
110A or 111A
or 112A
or 113A
or 131A
Introduction to the open source Web scripting language PHP. Recommended
for anyone needing to build dynamic Web sites and Web applications. Semantics
and syntax of the PHP language, including discussion on the practical problems
that PHP solves. Students write server-side, cross-platform, HTML embedded
scripts that perform various tasks, including implementing dynamic Web
pages that interact with databases and files. CSU
CS 130B. Advanced PHP Programming (3)
Lec-3, lab-3.. .. .. .. .. .. .. .. .. .. .. .. .. .. ..P/NP available
PREREQ.: CS
130A
This class covers using PHP for database connectivity to build scalable,
dynamic websites. Assignments emphasize using PHP for user authentication,
site personalization, content management, session tracking, and user-driven
database updating. A class project demonstrates using PHP and a database
(MySQL) to build a scalable, object oriented, template-based e-commerce
website. CSU
CS 131A. Python Programming (3)
Lec-3, conf-1, lab-3.. .. .. .. .. .. .. .. .. .. .. .. .. .. ..P/NP available
Advise: CS
110A or 111A
or 113A
or 130A
or 112A
or 161
or 160B
Introduction to the interpreted, interactive, object-oriented language
Python. Recommended for anyone needing a general-purpose programming language
and for those performing web site or system administration. Semantics and
syntax of the Python language, including discussion on the practical problems
that Python solves. Students write stand-alone programs that perform various
tasks including interfacing to system calls and libraries; sending and
retrieving information from web sites; and, connecting to databases. CSU
CS 132A. Ruby Programming (3)
Lec-3, lab-3.. .. .. .. .. .. .. .. .. .. .. .. .. .. ..P/NP available
Advise: CS
110A or 111A
or 113A
or 130A
or 112A
or 161
or 160B
Recommended for anyone using the Ruby on Rails web framework, performing
general-purpose programming, or web site or system administration. Solution
of practical problems. Useful object-oriented design patterns. Creating
stand-alone programs that interface to system calls and libraries and create
a MVC (Model-View-Controller) web site that connects to databases. CSU
CS 132R. Ruby on Rails Workshop (1)
Lec-1
P/NP available
Advise: CS
110A, 111A,
112A,
113A,
130A,
or other computer programming course
Demonstration of the Ruby on Rails web framework. Brief survey of Ruby
programming language and Model View Controller design pattern. Ruby on
Rails installation, including an installation on student's computer and
ISP deployment. Build a shopping cart application with Content Management,
User Authentication, Checkout System, Unit Testing, and AJAX capabilities.
CSU
CS 141. Mastering Regular Expressions (1)
Lec-1, lab-1
P/NP only
PREREQ.: CS
110A or 111A
or 112A
or 113A
or 130A
or 131A,
or similar programming experience
Practice in the use of regular expressions to solve practical text
processing techniques. Students can choose to solve problems in the language
of their choice. CSU
CS 142. Programming Techniques for XML (2)
Lec-2, lab-2
P/NP available
PREREQ.: CS
110A or 111A
or 112A
or 113A
or 130A
or 131A,
or similar programming experience
Programming techniques for processing XML data. Comparison of programming
approaches, including SAX, SAX-like, and DOM interfaces. Navigating, filtering,
and modifying XML. Transformation of XML data. CSU
CS 150A. Intro to Databases Using T-SQL (3)
Lec-3, lab-3
P/NP available
Introduction to single-user database management systems. Design and
development of relational database systems using client-based software.
Students will use SQL and other database tools to define and manipulate
the database. This course uses Microsoft Access software and includes a
brief introduction to VBA (Visual Basic for Applications). CSU
CS 151A. Oracle SQL Databases (3)
Lec-3, lab-3
A course in the use of Oracle SQL. Students use Oracle Database software
and clients to design and develop database systems. The course includes
coverage of Oracle proprietary functions and an introduction to PL/SQL.
CSU
CS 151B. Oracle Database Administration (3)
Lec-3, lab-3
P/NP available
PREREQ.: CS 150A or 151A
Advise: CS 160A
An advanced course in the architecture, design, configuration, installation,
and maintenance of an Oracle relational database management system. Student
will gain the knowledge and skills needed to administer an Oracle client/server
database in an enterprise network environment. CSU
CS 151P. Oracle PL/SQL Programming (3)
Lec-3, lab-3
P/NP available
PREREQ.: Completion of or concurrent enrollment in CS
151A or experience writing SQL
An intermediate course in the use of the PL/SQL programming language.
Create and manage PL/SQL program units and data structures, stored procedures
and functions, database triggers, and packages to process data using database
objects. CSU
CS 152A. Programming SQL Server Using Transact-SQL
(4)
Lec-4, lab-4
P/NP available
PREREQ.: CS 150A or 151A
or 155A
or prior SQL experience
An advanced course in the design and development of multi-user database
systems using Microsoft SQL Server, T-SQL and .NET CLR techniques. CSU
CS 155A. MySQL Databases (3)
Lec-3, lab-3
P/NP available
Intro to the MySQL database management system. Design and development
of relational database systems. Students will use SQL and other database
tools to define and manipulate the database. CSU
CS 155B. MySQL Database Administration (3)
Lec-3, lab-3
PREREQ.: CS
155A
Advise: CS
160A
Students install and configure a MySQL server and create and manage
user accounts. Issues pertaining to optimization, security, privileges,
tuning, troubleshooting, and performing upgrades are studied and practiced.
CSU
CS 155P. Programming with MySQL (3)
Lec-3, lab-3
PREREQ.: CS 155A or CS 150A or CS 151A or demonstration of exit skills
An advanced course in the design and development of multi-user database systems using MySQL techniques. Create and manage MySQL program units and data structures,stored procedures and functions, and database triggers to process data using database objects. The MySQL database system is an open-source system. CSU
CS 159A. Database Design and Modeling (3)
Lec-3, lab-3
P/NP available
PREREQ.: CS 150A or 151A
or CS
152A
A course in the design of database structures and the use of database
modeling tools. CSU
CS 160A. Introduction to Unix/Linux (2)
Lec-2, lab-2
P/NP available
Introduction to the Unix operating system. Unix/Linux file management and
common utilities. Major Unix/Linux features and structural overview. CSU/UC
CS 160B. Unix/Linux Shell Scripting (2)
Lec-2, lab-2
P/NP available
PREREQ.: CS 160A or demo of CS 160A exit skills
Analyze, create, write, and debug Unix shell scripts. Students review
basic scripting techniques and develop scripting skills needed for Unix
System Administration courses. CSU/UC
CS 161. C for Unix and Linux (3)
Lec-3, conf-1, lab-3
PREREQ.: CS 160A
Advise: CS 110A or 111A
or 112A or 113A or other
previous programming experience
Computer programming using the C language on Unix and Linux systems.
Recommended for students who are studying the Unix and Linux operating
systems and who have had some previous programming experience. Standard
C header files and Unix documentation are used to implement solutions to
programming problems. The Unix compilation system is used and issues about
building commonly available software packages are discussed. CSU
CS 162. Linux Installation (1)
Lec-1
P/NP only
PREREQ.: CS
160A
The study and practice of the minimal administration skills needed
to install a standard Linux or Open Source Unix distribution on a personal
computer. An actual installation is performed, either on the student’s
own computer or on a classroom computer. Alternate sections may install
different distributions. An overview is given of Unix/Linux courses for
further study. CSU
CS 170A. Principles of Artificial Intelligence
(3)
Lec-3, lab-3
PREREQ.: PHIL
12A
Advise: CS
110A or 111A
or 112A
Fundamental concepts and techniques of Artificial Intelligence (AI)
and the Language of First Order Logic (FOL). Use of simple structure First
Order Logic sentences to encode knowledge to be stored and used by a computer.
Model thinking by manipulating FOL sentences. FOL will be used as a precise
specification language for stating axioms and proving theorems in logic.
CSU
CS 170P. Prolog Programming (3)
Lec-3, lab-3, conf-1
Advise: CS 170A and an introductory course
in programming such as CS 110A or 111A
or
112A
Fundamental concepts and techniques of programming using Prolog. Prolog
programming projects will include machine learning, expert systems, goal-oriented
programming and constraint logic programming.
CS 172X. Programming with Online Data (3)
Lec-3, conf-1, lab-3
Computing techniques used in the processing of publicly available data,
with an emphasis on scientific data. Explores ways to make local versions
of publicly available data, data storage techniques, and data processing
techniques, including statistical analysis and data visualization. Students
work on a final project in their field of interest. CSU
CS 176. Systems Analysis and Design (3)
Lec-3, lab-1
PREREQ.: CS 110A or 111A
or 150A or 151A or 112A
Analysis and design of computer-oriented systems from inception to
implementation. Analysis of present systems, interviewing techniques, questionnaires,
cost statements, forms design, problem definitions, presentations, and
hardware and software alternatives. Case study of a typical commercial
data-processing project. CSU
CS 177. Software Engineering (3)
Lec-3, lab-3
P/NP available
PREREQ.: CS
110A or 111A
or 112A
or 113A
or 130A
or 131A
or similar programming experience
Overview of the entire software engineering process from start to finish.
Includes Analysis, Design, Development, Project Management, Testing, and
Evolution. Use of industry techniques and tools including UML diagrams,
version control and installation software. CSU/UC
CS 180. Designing Interactive Applications with
Flash (3)
Lec-3, lab-3
PREREQ.: MMSP 140 or CS
183A
A course that combines design and programming to show students an overview
of what’s possible in Flash and provide hands-on experience building web
sites and other Flash applications. The class format includes lecture,
discussion, hands-on exercises and a final project. CSU
CS 180 =MMSP 149
CS 183A. Multimedia Tools (3)
Lec-3, lab-3
P/NP available
Advise: CS 100M or CNIT
100 or IDST
120
Repeat: max. 6 units
Hands-on survey of multimedia theory and practice. Team approach to
the design and production of interactive multimedia projects. Multimedia
applications, including authoring, video capture, audio capture, and animation.
Multimedia hardware, including Macintosh and Windows platforms, audio and
video capture cards, and peripherals. CSU
CS 183B. Flash Game Programming I (3)
Lec-3, conf-1, lab-3
P/NP available
PREREQ.: CS 183A or MMSP 140 or experience using Flash: graphical tools, built-in objects, and
how to create timeline-based movies
Multimedia game programming using Macromedia Flash ActionScripting.
Program design and implementation, including algorithms, data structures,
control structures, style, and debugging techniques for the creation of
web-based interactive games. CSU
CS 183C. Advanced Multimedia Programming (3)
Lec-3, conf-1, lab-3
P/NP available
PREREQ.: CS 183B
Object-oriented programming for the creation of multimedia projects.
Programming games and simulations. Advanced data structures, including
multidimensional arrays, queues, and stacks. Inheritance, encapsulation,
and polymorphism. CSU
CS 183F. Flex Programming (3)
Lec-3, lab-3
P/NP available
PREREQ.: CS
183B or 110A
or 111A
or 112A
or 130A
or 131A
or similar programming experience
Advise: CS
142 or CNIT
134
Learn the Flex framework to create Flash-based Rich Internet Applications
using object-oriented programming and XML. Create and customize application
layout using built-in and custom-built components for data binding, forms,
and validation tasks. Manage state using the Model View Controller design
pattern. Debug applications locally and remotely. CSU
CS 198. Industry Internship (1, 2, 3, or 4)
Conf-1, work-5, 10, 15, or 20
P/NP available
Repeat: max. 3, 6, 9, or 12 units
Internship programs are joint ventures between institutions or companies
in the Bay Area and the Computer Science Department. Students are employed
in areas such as computer programming; database administration, programming,
or design; Unix/Linux administration or programming; multimedia programming;
or other computer science related fields. CSU
CS 199. Independent Study (1-3)
Ind st-5,10,15
PREREQ.: CNIT
135C;CS 110C, 111C, 141B,
183B,
or
260A
Repeat: max. 6 units (new subj.)
Large-scale individual projects in computer programming to be defined
in cooperation with an instructor-supervisor. Student opportunity to complete
independent programming study. CSU (UC upon review)
Formerly CIS 199.
CS 211E. Advanced Java: Enterprise Edition
(2)
Lec-2, lab-2
P/NP available
PREREQ.: CS 111B
Advise: CS 211S
Advanced Java 2 Enterprise Edition features of the Java language essential
for building network and web oriented applications. Topics include networking,
JDBC, Servlets, JavaBeans, and XML. CSU
CS 211G. Game Programming in Java (3)
Lec-3, lab-3
P/NP available
COREQ.: Completion or concurrent enrollment in CS
111B
Core aspects of developing games in Java. Creation and control of geometric
elements and sprites, animated characters, and scrolling backgrounds. Keyboard,
mouse, and joystick input techniques. Use of imported digital sound effects
and images. An overview of enhancing playability by implementing Artificial
Intelligence, kinematics, physics, and the element of chance.
CS 211M. Advanced Java: Micro Edition (2)
Lec-2, lab-2
PREREQ.: CS 111B
Advise: CS 211S
Principles of application development on small, limited resource devices
using the Java 2 Micro Edition environment with a focus on the Connected
Limited Device Configuration (CLDC) and Mobile Information Device Profile
(MIDP) architecture. CSU
CS 211S. Advanced Java: Standard Edition (2)
Lec-2, lab-2
PREREQ.: CS 111B
Introduces advanced Java language features and packages that are essential
for building Java 2 Standard Edition applications. Topics include multithreading,
collections, AWT classes, and Swing classes. CSU
CS 211V. Graphics Programming in Java (3)
Lec-3, lab-3, conference-1
P/NP available
PREREQ.: CS 111B
Core aspects of creating 2D shapes and GUIs using AWT (Abstract Windowing
Toolkit) and Swing. Color, Graphics, Font, and Font metrics classes.
Loading and manipulating images within AWT and Swing GUI applications.
Using Layout Managers to position GUI controls in Containers. Handling
user input using Event and Listener classes. CSU
CS 232. Ruby on Rails Development (4)
Lec-4, lab-4, conference-1
P/NP available
Prereq: CS 132A or demonstration of CS 132A
exit skills
Advise: CNIT 132
Learn to develop data driven web applications using Ruby on Rails.
The course covers all of the core aspects of the framework including Activerecord,
ERB, Rails Controller classes, Action Mailer, and application testing.
CSU
CS 260A. Unix/Linux System Administration (3)
Lec-3, conf-1, lab-3
P/NP available
PREREQ.: CS 160B or demo of CS 160B exit skills
Examination of the skills necessary to effectively perform the basic
responsibilities of a Unix/Linux system administrator such as setting up
new users, monitoring system activity, configuring the startup process,
managing the file system, performing backups, and maintaining security.
Shell programming is used as an aid for automating system administration
tasks. CSU
Formerly CS 260.
CS 261A. Unix/Linux Systems Programming (3)
Lec-3, lab-3
P/NP available
PREREQ.: CS
161
An overview of Unix/Linux system calls, the functions in the standard
library, which access the lowest level resources of the Unix/Linux operating
system. Emphasis is on writing programs for controlling file I/O, terminal
I/O and buffering characteristics, process handling, signal handling, pipes,
file locking, network-based inter-process communication using sockets,
and RPC. This course provides concrete examples of the Unix/Linux system
call interface using the C and/or C++ programming language. CSU
CS 261B. Advanced Unix/Linux Systems Programming (3)
Lec-3, lab-3
P/NP available
PREREQ.: CS
261A
An advanced course in programming of Unix systems. Emphasis is on writing
advanced programs for controlling processes. this course provides advanced
examples of the Unix system call interface using the C programming language.
CSU
CS 262. Unix/Linux Network Programming (3)
Lec-3, lab-3
P/NP available
PREREQ.: CS
161 and CNIT
106 or 201
An overview of Unix/Linux system calls, the functions in the standard
library, which access the lowest level resources of the Unix/Linux operating
system. Emphasis is on writing programs for controlling network-based inter-process
communication using sockets, and RPC. This course provides concrete examples
of the Unix/Linux system call interface using the C and/or C++ programming
language. CSU
CS 267. Unix and Linux Security (3)
Lec-3, lab-3
PREREQ.: CNIT
106 or 201
Advise: CS
161 or CNIT
270
Security issues on Unix and Linux platforms arising from networked
and system operations. Vulnerabilities and weaknesses of common services
are discussed and solutions and workarounds are proposed. Programmed threats
and denial of service attacks and their sources are examined. Detect, neutralize,
and recover from security breaches. Shell programming to simulate attacks
of vulnerable network services. CSU
CS 270. Computer Architecture with Assembly
Language (3)
Lec-3, conf-1, lab-3
PREREQ.: CS 110B or 111B
This course emphasizes the organization and operation 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. CSU/UC/CAN
CSCI 10
CS ORAX. Oracle and XML (1)
Lec-1, lab-1
P/NP available
PREREQ.: CS
150A, 151A,
or 155A
Introduction to the technologies available in Oracle 10G for working
with XML (Extensible Markup Language) data. Explores the differences in
working with data in a standard relational database and with SML data.
Generation of XML data from relational data; storing XML natively in the
database; querying XML data. CSU
CS ORBX. Oracle Object-Relational Database
Concepts (1)
Lec-1, lab-1
P/NP available
PREREQ.: CS
150A or 151A
or 155A
Advise: CS
151P
Introduction to the object relational database (ORDB) model as implemented
by Oracle 10G. Comparison of object types and related object-oriented features
such as variable-length arrays and nested table. Creating objects views.
Using object type as columns in a table and using pure object tables. CSU