Lower Division Collegiate
CS133C# (4 credits)
Programming Fundamentals Using C#
Covers computer concepts and problem solving methods in the Windows environment using C# programming language. Topics include algorithms, simple data types, condition and iterative structures, functions and procedures, and the program documentation. Prerequisites: CIS120 or documented proficiency and MTH65 or higher level math or documented proficiency.
CS160 (4 credits)
Introduction to Computer Science
Explores the disciplines and professions of computer science and software engineering. Provides an overview of computer hardware and software architecture, the study of algorithms, software design and development, data representation and organization, problem-solving strategies, ethics in the digital world, and the history of computing and its influences on society. Explores career options and begins the process of planning a program of study. Exposes students to both low-level and high-level programming languages. Prerequisites: CIS120 or documented proficiency and MTH65 or designated placement score. Recommended prerequisite: CIS140.
CS161J (4 credits)
Computer Science I (Java)
Presents the science of programming and problem solving using an object-oriented programming language. Emphasis is on a disciplined approach to algorithm development and problem-solving methods using the object-oriented programming language Java. The course covers basic programming constructs, syntax, semantics, and logic of the Java programming language. The course provides an introduction to object-oriented concepts such as encapsulation, inheritance and polymorphism. Simple UML class diagrams will be introduced and used as a tool for object-oriented design. Prerequisites: Any CS133 course, CS160 or CS161U, MTH111 or higher level math.
CS161U (4 credits)
Computer Science I (C++)
Presents the science of programming and problem solving. Emphasis is on a disciplined approach to algorithm development and problem-solving methods using the programming language C++. Covers basic programming constructs, syntax, semantics, and logic of the C++ programming language. Topics include algorithms, simple data types, conditional and iterative structures, function definition, structured programming and documentation. Prerequisites: CIS120 or documented proficiency and MTH95 or higher level math.
CS162J (4 credits)
Computer Science II (Java)
Continues CIS161J, covering advanced programming techniques using Java. Topics include graphical user interface programming, advanced event handling, exception handling, streams, and basic file I/O. Advanced data structures and algorithms such as lists and maps are also covered. Object-oriented algorithms and design methods are emphasized. Prerequisite: CS161J.
CS162U (4 credits)
Computer Science II (C++)
Solves complex problems using advanced features of the C++ language. Topics include function usage, pointer data type, dynamic memory allocation, string manipulation, and structure and union data types. Emphasis is on structured program design techniques. Prerequisite: CS161U.
CS180 (1 credit)
Computer Programming Recitation
An optional course taken concurrently with a computer programming course. For students who want more help with the material in a programming class, this course will emphasize discussion to clarify concepts being currently covered in the programming class as well as extra short assignments designed to solidify understanding of course material from the programming class. Co-requisites: CS133# or CS161J.
CS234U (4 credits)
Object Oriented Programming in C++
A study of object oriented programming with C++. Beginning and intermediate concepts are covered including classes, objects, member functions, overloading, inheritance, polymorphism, templates, and virtual functions. This course prepares students with a strong C++ background for transfer into upper-division coursework using C++ at a university. Prerequisite: CS162U.
CS260 (4 credits)
Data Structures I
Studies the merge of abstract data types and the algorithms which manipulate them. Topics include the study of elementary searching and sorting algorithms and hashing, and object-oriented implementation strategies for stacks, lists, queues, trees and hash tables. For each data structure examined, common and useful algorithms that utilize such structures will be studied. Course also covers an introduction and application of complexity analysis: asymptotic analysis of upper and average complexity bounds, O(), Theta() and Omega() notation, as well as a general introduction to resource consumption, including the tradeoff between time and space. Prerequisites: CS162J or CS234U, and MTH111. Co-requisite: MTH251.
CS275 (4 credits)
Data Base Development I
Provides students with an introduction to the concepts, skills, and tools involved in relational data base design, implementation, and testing. Students will be introduced to and use Structured Query Language (SQL) for creating a client/server data base and data manipulation. Covers relational data base concepts, data anomalies, and data normalization. Entity-Relationship diagrams will be covered and used as a tool for designing a data base system. CS275 enhances and supplements the programming or networking student's analysis, design, and problem solving skills. Prerequisite: CIS125DB or previous database experience with approval of Instructor.