Computer Science


203. Object-Oriented Programming II (3) (F)  Advanced object-oriented software development.  Polymorphism, overloading, exceptions, design, and documentation.  (Prerequisite: CIS 202).

210. Computer Organization (3) (W) Digital logic, digital systems, machine-level representation of data, assembly-level machine organization. (Prerequisites: CIS 101.)

301. Algorithms and Complexity (3) (W) Algorithmic analysis, strategies and fundamental algorithms. (Prerequisites: CS 203 and CIS 206.)

320. Introduction to Computational Theory (3) (W) Finite state automata and regular expressions, context-free grammars and pushdown automata, Turing machines, computability and undecidability. (Prerequisites: CS 203 and CIS 206.)

390R. Special Topics in Computer Science (1-3) (Variable)

399R. Internship in Computer Science (1-12) (F, W, S) Credit for applied experience in computer science. Prior approval must be obtained and coordinated by a faculty member and on-site supervisor.

400. Computer Science Proficiency (0) (F,W,S) Students demonstrate proficiency at important Computer Science skills by examination.

401. Web Applications Development (3) (F) Web application programming using databases and current front-end and back-end web technology. (Prerequisite: CS 203 and IS 350.)

415. Operating Systems Design (3) (F) Operating systems principles. concurrency, scheduling, dispatch, memory management. (Prerequisites: CS 210, CS 301.)

420. Programming Languages (3) (S) Virtual machines, language translation, declarations and types, abstraction mechanisms, object-oriented programming. (Prerequisites: CIS 301, CS 320.)

490R. Advanced Topics in Computer Science (3) (F, W, S) Senior-level elective course.  Subject varies according to instructor availability.  (Prerequisite: CS 301)

491-492-493. Seminar (1-1-1) (Variable) Readings in the Computer Science literature, writing of review articles, research proposal writing and presentation, conducting research, poster presentation, writing and presentation of the senior thesis. (Prerequisite: instructor consent.)

495R. Independent Study in Computer Science (1-3) (Variable) Topic and credit to be arranged between the student and the instructor. (Prerequisite: instructor consent.)

496R. Student Research in Computer Science (1-3) (Variable) Supervised individual research for students who have been granted a student research and development assistantship. (Required of all research associates.)