MATH 142 - (Q) Discrete Structures | |
---|---|
Prerequisites: | MATH 005 or MATH 102 or MATH 103 or MATH 106 or Math Placement DAT score of 13 or higher |
Corequisites: | None |
Credits: | 4cr |
Course Description: | A study of symbolic logic, sets, combinatorics, mathematical induction, recursion, graph theory, and trees. Intended for Engineering, Computer Science, and Computer Information Systems majors, but open to other qualified students. |
CMPS 134 - Computer Science I | |
---|---|
Prerequisites: | None |
Corequisites: | CMPS 134L |
Credits: | 3cr |
Course Description: | An introduction to programming concepts and methodology using an object-oriented programming language (currently Java). Topics include problem analysis, abstraction, modularization, the development and use of algorithms, reuse, and the use of programming constructs including data types, classes, control structures, and methods. |
CMPS 134L - Computer Science I Lab | |
---|---|
Prerequisites: | CMPS 134 (with departmental permission) |
Corequisites: | CMPS 134 |
Credits: | 1cr |
Course Description: | Programming-related activities are undertaken that apply essential concepts from CMPS 134, including problem decomposition, modularization, flow of control, scoping, object-orientation, and algorithm development. |
CMPS 144 - Computer Science II | |
---|---|
Prerequisites: | CMPS 134, CMPS 134L, and either MATH 114 or MATH 142 |
Corequisites: | CMPS 144L |
Credits: | 3cr |
Course Description: | This course emphasizes object-oriented software development, addressing both software engineering and programming. Topics include modularization, abstraction, encapsulation/information hiding, software reuse, software testing, classic data abstractions (e.g., lists, trees) and algorithms (e.g., sorting, searching), recursion, program correctness, and basic algorithm analysis. |
CMPS 144L - Computer Science II Lab | |
---|---|
Prerequisites: | CMPS 134 and CMPS 134L |
Corequisites: | CMPS 144 is required as a co-requisite, or as a prerequisite with departmental permission. |
Credits: | 1cr |
Course Description: | Activities are undertaken that apply programming concepts form CMPS 144, including object-orientation, inheritance, polymorphism, iterators, generics, algorithms involving various container structures (e.g., stacks, queues, lists, trees, graphs), analysis of algorithms, and concurrency. |
CMPS 240 - Data Structures and Algorithms | |
---|---|
Prerequisites: | CMPS 144 |
Corequisites: | None |
Credits: | 3cr |
Course Description: | An examination of the issues of data representation, algorithm structure, and encapsulation as they pertain to the development of object-oriented software. Abstract data types studied include stacks, queues, binary trees, n-ary trees, and graphs. Various representation alternatives are analyzed and compared, trade-offs frequently encountered by software developers are discussed. |
CMPS 340 - Introduction to Database | |
---|---|
Prerequisites: | CMPS 144 required, CMPS 240 recommended |
Corequisites: | None |
Credits: | 3cr |
Course Description: | File structures concepts and file processing applications. Topics include file maintenance and storage management; file searching, sorting, and merging; consequential processing; index structures; B-trees; hash tables; indexed sequential files; database concepts. |
CMPS 352 - Operating Systems | |
---|---|
Prerequisites: | CMPS 240, CMPS 250 |
Corequisites: | None |
Credits: | 3cr |
Course Description: | An introduction to the principles of operating systems. Topics include operating system structure, process management, scheduling and dispatching, process synchronization and interprocess communication, memory management, virtual memory, device management, I/O, and file systems. |