Sean Jones, M.S., University of Oklahoma
Stuart Turner, M.Fin, University of Tulsa
An overview of the entire discipline of Computer Science is presented. Topics covered are machine architecture, software (including fundamental programming concepts), and data organization. Additional topics include professional ethics and social implications.
This is an introductory course in object-oriented programming using Java including recursion and exception handling. The skills learned in this course are applicable to all programming tasks.
This course is designed as an introductory treatment of the data structures which may be used in computer storage to represent the information involved in solving problems. Topics include the study of contiguous and linked stacks and queues, searching and sorting algorithms. Programming work expands on the concepts of object-oriented design.
A continuation of the study of advanced data structures is the focus of this course. Topics include advanced sorting techniques, string matching algorithms, trees and graphs.
An analysis of data communication hardware and systems is the focus of this course. Topics include telecommunications, network architecture and analysis, TCP/IP protocols, security, and installation.
This course is designed to introduce the students with the concept of computer architecture. Topics presented in this class include Solid State Electronics and Device Physics, Number Systems and Computer Arithmetic, Boolean Algebra and Karnaugh Map, Digital Logic and Circuits, ALU/CPU Design and Instruction Set Architecture (ISA). Good mathematics, physics and programming skills are useful to have a better understanding what happens at the hardware level.
This course is designed to introduce the students with the concept of formal logic theory and it’s application in computer science. Formal logic theory is the study of building local conclusions from well-defined axioms or assumptions. These foundations are connected to Computer Science by means of logic puzzle solutions and proofs of computer algorithms and programs.
This course is designed to introduce the students with the concept of artificial intelligence by designing and implementing AI agents. Agents will be tested by introducing them into a shared game space where the agents will compete against each other to achieve a predefined goal.
Students in this course will work together over the course of the semester to design and build a software project. This will involve selecting a project, gathering design requirements, implementing these requirements, and integrating shared work into a single completed product.