CS211 Data Structures (3)
This course continues to develop students’ programming abilities, covering algorithmic analysis, internal search and sort
methodology, and a number of commonly used data structures using the Java programming language.
CS211L Data Structures Lab (1)
This lab course provides hands-on assistance and instruction in the programming work required by CS211.
CS212 Computer Hardware (3)
Presents computer hardware concepts, including components, their structures, and their interfaces. Integral to this class
is the tight cohesion of theory (lecture) and practice (hands-on labs). Labs will cover microcomputer components,
construction, problem diagnosis and resolution, maintenance, and upgrades. (Lab fee: $40.)
CS301 Computer Application Development (3)
This course teaches computer application design and development. Students will develop a multi-tiered web-based
CS302 Software Development (3)
This course is an introduction to the concepts and practices of software development. Topics include iterative
development, gathering requirements, project planning, user stories and tasks, design, testing and continuous
integration, test-driven development, debugging, and software processes.
CS308 Advanced Java Programming (3)
This course provides advanced training in the Java programming language. Topics will include applications and applets,
object-oriented programming features, GUI (graphical user interface) components using Swing, exception handling,
multithreading, files and streams, multimedia capabilities, database connectivity (JDBC), client/server programming,
servlets, and JavaServer Pages (JSP).
Prerequisites: CS122, CS211, and CS301; or instructor’s approval.
CS311 Computer Organization & Architecture (3)
This course introduces computer hardware organization, design, structure, and relationships. Mechanics of digital
computer information storage, transfer, and control are addressed. Also explored are fundamentals of logic design,
computer arithmetic, addressing, instruction sets and assembler languages, and memory organization.
CS318 C/C++ Programming (3)
An introduction to the C/C++ programming languages, which are the backbone of many technical and business
programming environments. The course will cover procedural language topics, C/C++ syntax, standard function and
class libraries, structures and classes in C++, file processing, exception handling, pointers and memory management,
CS321 Operating Systems (3)
An introductory study of the organization and architecture of computer operating systems. Major principles are
discussed, including purposes, functions, interfaces, and structures. Case studies involving actual operating systems are
presented. Covers preparation for Microsoft’s Operating System examination.
CS322 Networking Principles & Architecture (3)
This course introduces computer networks. It includes concepts and methods of computer communications, hardware
and software components, configurations, and standard layers of communication protocols.