All Courses of 2014

This course is an introduction to programming computers. It is the main introductory course in the Computer Science department and is taken by students from a variety of disciplines wishing to have an understanding of computer programming as well as students wanting to continue on to further studies in Computer Science.

We teach programming using the cross-platform, object-oriented programming language Java. The main focus is on learning to understand the detailed requirements of a programming task, and writing programs that are well structured, correct, easy to read, and to maintain. In order to do this students need to develop an understanding of how to represent information both as data and algorithms within the objects of a Java program.

By the end of the course students who succeed are able to design and implement a medium-size computer program as well as have some idea of the process of program execution.

The 105 course must be taken by students who have completed 101 and wish to advance in Computer Science. It extends the programming skills of the Principles of Programming course, focusing on data structures and efficient ways to manipulate data. The course is taught using Python. Topics include: recursion, regular expressions, data interchange, abstract data types, linear data structures (lists, stacks, queues), non-linear data structures (heaps, hash tables, trees), searching and sorting.