Computer Science (COSC)
COSC 1436 Programming Fundamentals I 4 Credits (4 Lec, 0 Lab)
This course introduces the fundamental concepts of structured programming and provides a comprehensive introduction to programming for computer science and technology majors. Topics include software development methodology, data types, control structures, functions, arrays, and the mechanics of running, testing, and debugging. This course assumes computer literacy.
COSC 1437 Programming Fundamentals II 4 Credits (4 Lec, 0 Lab)
This course focuses on the object-oriented programming paradigm, emphasizing the definition and use of classes along with fundamentals of object-oriented design. The course includes basic analysis of algorithms, searching and sorting techniques, and an introduction to software engineering processes. Students will apply techniques for testing and debugging software.
COSC 2325 Computer Organization 3 Credits (2 Lec, 2 Lab)
The organization of computer systems is introduced using assembly language. Topics include basic concepts of computer architecture and organization, memory hierarchy, data types, computer arithmetic, control structures, interrupt handling, instruction sets, performance metrics, and the mechanics of testing and debugging computer systems. Embedded systems and device interfacing are introduced. Algebra level competency is suggested to succeed in this class.
COSC 2436 Programming Fundamentals III 4 Credits (4 Lec, 0 Lab)
This course uses further applications of programming techniques, introducing the fundamental concepts of data structures and algorithms. Topics include data structures (including stacks, queues, linked lists, hash tables, trees, and graphs), searching, sorting, recursion, and algorithmic analysis. Programs will be implemented in an appropriate object oriented language.