Boston University Seal Boston University
College of Arts and Sciences
Computer Science Department

CS 111: Introduction to Computer Science, Summer 2005
Info and Announcements Course Description Books & Software Assignments and Labs Examples

Course description

This course will be an introduction to computer science and object-oriented programming through the vehicle of programming in the Java language. The course will focus on the skill of programming, to be sure, but will also attempt to introduce the student to the discipline of computer science.

It serves as a stand-alone, rigorous sample of computer science, suitable for math and science majors, and also as the first course in the CS concentration.

Our emphasis in teaching programming in this course centers on the following:

  1. Using objects as building blocks for program development.
  2. Developing elegant and efficient code from an abstract specification;
  3. Literate programming (writing a program that can be read by a human as well as a machine);
  4. Programming methodology, which involves
    • Thinking about the best way to plan out the design using object-oriented design and appropriate features of Java;
    • Methodical and efficient development of the implementation using step-wise refinement and incremental testing and debugging (using appropriate debugging tools);
    • Being able to convince yourself of the correctness of the implementation by mathematical reasoning.

Pre-requisite expectations

This is a first course in computer programming, and there are no formal pre-requisites for this class. The only expectation of students' computer skills before taking this class is to be comfortable with using email, web browsing, and copying and pasting text. In addition, familiarity with high school-level algebra (e.g. MA 118) is assumed.

Created by: Aaron Stevens,
Last update: 16 May 2005