Computer Science
Click the course title to view the course sections available in the latest term.
|
CS 133G Introduction to Computer Games |
| Credits: |
4.00 |
| Description: |
Fundamentals of computer game development, including a survey of computer game categories and platforms, major game components, an overview of the game development process, and an introduction to game graphics. This course will design and develop some elementary two-dimensional computer games. Prerequisites: WR 115, RD 115 and MTH 20 or equivalent placement test scores. |
|
CS 133U Introduction to C |
| Credits: |
4.00 |
| Description: |
Solve real-world problems using structured programming principles and the C programming language in a MS DOS/Windows environment. Introduces with little or no previous programming experience the world of computer programming through development of C programs to solve practical problems. Recommended: Computer Literacy (such as completion of CIS 120). |
|
CS 140U Introduction to UNIX |
| Credits: |
4.00 |
| Description: |
Provides an in-depth introduction into the UNIX operating system, including: task scheduling and management, memory management, input/output processing, internal and external commands, shell configuration, and shell customization. Explores the use of operating system utilities such as text editors, text formatters, electronic mail, and file management, scripting, and C/C++ compilers. Discusses trends in UNIX, including use of graphical user interfaces. Recommended: Computer literacy (such as completion of CIS 120); MTH 95; placement at WR 121. Additional lab hours may be required. |
|
CS 160 Exploring Computer Science |
| Credits: |
4.00 |
| Description: |
Explores the field of computer science. Provides an overview of computer architecture, software development engineering, data organization, problem-solving strategies, ethics, and theory of computation. Explores career options and develops rudimentary software development skills. Recommended: Computer Literacy (such as completion of CIS 120); placement at MTH 65 and RD 115. |
|
CS 161 Computer Science I |
| Credits: |
4.00 |
| Description: |
Introduces control structures, functions, arrays, and pointers. Concepts of data representation and algorithm design; sorting and searching; lab exercises. Recommended: MTH 111; WR 121; CS 160. completion of (CS 160 or CIS 122). (For CIS students: please contact instructor if you need a prerequisite waiver.) |
|
CS 162 Computer Science II |
| Credits: |
4.00 |
| Description: |
Programming using a high level programming language. Topics include: Conditionals, I/O, Files, Functions, Classes, Pointers, Dynamic Memory, Linear Linked lists, and Multi-Dimensional Arrays. Program correctness, verification, and testing. Recommended: MTH 112; WR 121; CS 140U; CS 161 or one term equivalent programming experience. |
|
CS 200 Computer Systems I |
| Credits: |
4.00 |
| Description: |
Introduction to computer systems from a software perspective Systems programming using C and assembly language. Basic computer organization. Representation of data. Machine instruction sets and assembly programming, relationship between C code and assembly code, C pointers and structures and their machine-level representation. Linking and loading. Program debugging. Recommended: CS 140u and either CS 162 or CS 234u. |
|
CS 201 Computer Systems |
| Credits: |
4.00 |
| Description: |
Introduces computer systems from a software perspective. Provides an overview of C and assembly language programming and reading skills. Learn basic systems programming skills and tools, measure and improve program performance based on an understanding of key aspects of machine architecture. |
|
CS 233G Game Programming |
| Credits: |
4.00 |
| Description: |
Object-oriented architectures and software design patterns used for game design. Students work with a game engine software framework to design and implement several kinds of games. Additional topics include animation techniques, physics simulation, user controls, graphical methods, and intelligent behaviors. Recommended: Object-oriented programming in C++ and/or C#, such as CS 162, CIS 211, or CIS 234N. |
|
CS 233U Advanced C Programming |
| Credits: |
4.00 |
| Description: |
Advanced C programming including the preprocessor, advanced pointers, data structures, algorithms, and program structure. Lab exercises. Recommend: CS 133U, MTH 112, WR 121, CS 140U. Additional lab hours may be required. |
|
CS 250 Discrete Structures I |
| Credits: |
4.00 |
| Description: |
Introduces discrete structures and techniques for computing sets, graphs and trees. Construct simple functions, and recursive definitions. Other topics include relational properties, equivalent, partial order, proof techniques, inductive proof, counting techniques and discrete probability. Recommend: MTH 251 |
|
CS 251 Discrete Structures II |
| Credits: |
4.00 |
| Description: |
Introduces formal logic including propositional calculus and first-order predicate calculus. Presents techniques of formal reasoning including natural deduction and resolution with application to program correctness and automatic reasoning. Introduction to algebraic structures in computing Recommend: CS 250 |
|
CS 260 Data Structures |
| Credits: |
4.00 |
| Description: |
Data structures including stacks, queues, lists, vectors, graphs, and trees. Algorithms including hash tables, sorting, searching and iterating over structures. Includes an in depth examination of recursion. Lab exercises. Recommended: CS 162 or CS 234u. Additional lab hours may be required. |
|
CS 261 Programming Systems |
| Credits: |
4.00 |
| Description: |
Operator overloading, single and multiple inheritance, virtual functions, polymorphism, templates, exceptions. STL containers and algorithms. Recommended: CS 260. |