Courses for CS majors

Tentative Schedule

Tentative Scheduling layout on a yearly basis can be accessed from the department webpage. This gives a layout of all CS courses by time/quarter which should be the starting point for planning out your schedule. However, you should consult the GET system for an actual class listing for each quarter. Scheduling pattern for all courses is indicated below:

Required Courses : Scheduling Pattern

CourseTitleFallWinterSpringSummer
CS101Introduction to Higher Education
 
CS120Introduction to Website Development
CS122Using Relational Databases and SQL
CS201Introduction to Programming (Java)
CS202Introduction to Object Oriented Programming (Java)
CS203Programming with Data Structure (Java)
CS245Using Operating System & Network for Programmers
 
CS301Computer Ethics in the Information Age
 
 
CS312Data Structures & Algorithms
 
CS320Web and Internet Programming
 
 
CS332FFunctional Programming
 
 
 
CS332LLogic Programming
 
 
 
CS332CC++ Object Oriented Programming
 
 
 
CS337Software Design
 
 
CS386Introduction to Automata Theory
 
 
CS437Software Engineering
 
 
CS440Introduction to Operating System
 
 
CS490Computer Science Recapitulation
 
 
CS491ASoftware Design Laboratory
 
 
CS491BSoftware Design Laboratory
 
 

Elective Courses : Scheduling Pattern

CourseTitleFallWinterSpringSummer
CS340Assembly Language & Systems Programming
 
 
 
CS345UNIX & Shell Programming
 
 
CS350Foundations of Computer Graphics
 
 
CS370Parallel & Distributed Programming
 
 
CS420Web Applications Architecture
 
 
CS422Principles of Data Base Systems
 
 
CS447Computer Networks
 
 
CS450Computer Graphics – II
 
 
 
CS451Multimedia Software Systems
 
 
 
CS454Topics in Advanced CS (varies)
 
 
 
 
CS460Artificial Intelligence
 
 
 
CS461Machine Learning
 
 
 
CS470Computer Networking Protocols
 
 
 
CS480Cryptography and Information Security
 
 
 
CS486Computability & Intractability
 
 
 
CS488Compilers
 
 
 
CS499UG Directed Study (varies)