Course Information


CS 149: Operating Systems

Course Objectives


Fundamentals: Contiguous and non-contiguous memory management; processor scheduling and interrupts; concurrent, mutually exclusive, synchronized and deadlocked processes; files. Substantial programming project required.




CS 49J: Programming in Java

Course Objectives


Introduction to the Java programming language and libraries. Topics include fundamental data types and control structures, object-oriented programming, string processing, input/output, and error handling. Use of Java libraries for mathematics, graphics, collections, and for user interfaces.




CS 235: User Interface Design

Course Objectives


To present methodologies for designing user interfaces, to study issues in human/computer interaction, to introduce techniques for developing advanced user interfaces, and to become familiar with current research topics. Topics include information visualization, intelligent user interfaces and agents, interfaces for computer supported cooperative work, models of user/system interaction, and societal effects.