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

CS108: Introduction to Application Programming, Spring 2006
Contact Info Course Description Books & Software Labs Assignments Examples

Course objective:

Introduce students to computer programming and application development.

Course goals:

Stimulating the student's curiosity with respect to the computer; analyzing business problems for the purpose of developing computer solutions; and articulating a process to develop solutions to these business problems in the form of computer programs.

This course will introduce students to the software development lifecycle (specification, design/planning, implementation/coding, testing), and the major paradigms for software development. A major portion of the course will be dedicated to learning the basics of structured and object-oriented programming in Java. The course will culminate with a software development team project, which will simulate the process used by a team of software development consultants.

At the end of this course, students will be able to:

  • Identify and explain the majors aspects of an object-oriented computer program
  • Analyze a business problem/situation and describe the process of building a computer program to solve the business problem.
  • Implement a business application with a computer program.

What You Need to Know About Computer Programming

I believe anyone can succeed at learning Java. This is a first course in computer programming, and there are no formal pre-requisites. 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.

In addition, you will need time, and this is more important than you can imagine. Many people believe that computer programming is extremely difficult, and that the code is written in some arcane syntax understandable only by experts. Although some parts of the process are indeed complex, most of the source code required for homework assignments can be easily understood.

So, what makes programming so hard? It’s not the difficulty: It’s the time required to achieve any decent results. The homework assignments will take time, so make sure you have plenty of it.

Adapted from text in “Core Techniques and Algorithms in Game Programming,” Daniel Sanchez-Crespo Dalmau.


Created by: Aaron Stevens, azs@bu.edu
http://www.cs.bu.edu/courses/cs108/
Last update: 19 january 2006