CS 112
Ileana Streinu

Lecture 1


  1. Object-Oriented Programming: Java, and perhaps just a bit of C++.
  2. Data Structures: stacks, queues, lists, trees, graphs, etc.
  3. More Unix commands, utilities and concepts.
  4. More advanced and more sophisticated programming techniques, and basic software engineering programming discipline.

Platforms, software

  1. Java on our Linux machine beowulf
  2. c++ on our Linux machine beowulf


  1. Motivation: why Object-Oriented Programming? Why Java? Why C++? Why data structures?

    I will give an overview of what we will do in this course. I use examples from last semester, so that you see where we are heading to and how much fun programming in Java can be. We will use graphics, design games and do lots of cool things with a visual impact, in addition to mastering techniques that will make you proud of your skills. Along the way, we learn fundamental concepts such as recursion, and fundamental data structures, such as stacks, queues, lists, trees and graphs.

  2. To do after the class: email me the answers to this questionnaire. By the end of the day TODAY, via an email to Ileana at the 112b account.

  3. The first example Hello, World!:

  4. In-class exercise:

For further reference (we do everything in detail on Thursday and next week):


Optional Reading assignments if you want to move faster:

Ileana Streinu