Computer Science 1 (4003-231-15)

Course Information


General Information [ PDF ]

Instructor: Reynold Bailey
Email contact: rjb@cs.rit.edu
Phone contact: (585) 475-6181
   
Office hours: Monday, Wednesday: 4:00 PM - 6:00 PM
  Room 70-3517
   
Class times: Monday, Wednesday
  2:00 PM - 3:50 PM
  Room: 70-1445
   
Lab times: Thursday
  2:00 PM - 3:50 PM
  Room: 70-3540 / ICL 2
  Important: this lab is only for students enrolled in 231-40. You must attend the lab sections for which you are registered or you will not get credit for your work.
   
Departmental CS1 page: http://www.cs.rit.edu/~vcss231/
  Contains general information for students enrolled in all sections of CS1.
   
Prof. Bailey's CS1 page: http://www.cs.rit.edu/~rjb/CS1_20091.htm 
  Contains specific information for students enrolled in section 15 of CS1 (4003-231-15).

Course Syllabus

Lecture Notes: The slides presented in class mostly contain content developed by Prof. Bayliss, Prof. Adams, Prof. Reynolds, and Prof. Strout. I will post my lecture notes in the table below.

Labs and Special Events such as quiz dates will also be posted in the table below. Please stay informed by visiting this site regularly throughout the quarter.

Week Topics [assessment] Readings Lecture Notes Labs Special Events
1 Course overview
Overview of computing and programming
Introduction to OOP
Introduction to the software life cycle
Variables in programming
Introduction to UNIX
Beginner's Guide
UNIX 1, 2, 4, 10
Liang 1
1, 2, 3, 4 Main Lab Page

Lab 1

 
2 Java program structure
Primitive types
Constants vs. variables
Expressions and precedence
Assignment in Java
Memory diagrams for primitive types
Introduction to objects
UNIX 20
Liang 2, 3
Working remotely

1, 2
Main Lab Page

Lab 2

Last day to drop/add - 09/13
3 References, memory, and memory diagrams
Using objects and classes
Methods: new, invocation, return values
Introduction to Strings
Reading Javadocs
Boolean expressions: relational, logical
.equals vs. ==
Liang 2, 3 1, 2 Main Lab Page

Lab 3

Quiz 1 - 09/23
4 Control structures - conditional statements: if and switch
Compound statements
Program flow: sequential, conditional, method call
Liang 3 1, 2 Main Lab Page

Lab 4

 
5 Control structures - iteration: while, for, and do while
Program flow: iteration
Nested loops
Liang 4 1 Main Lab Page

Lab 5

Quiz 2
6 Constructing classes and methods
Constructors
Parameter passing
Types of variables: class, instance, and local
Unit testing and debugging strategies
Liang 5, 7 1, 2 Main Lab Page

Lab 6

Report final exam conflicts
7 Principles of OOD: encapsulation
Scope and life time
Using this
Liang 7 1 Main Lab Page

Lab 7

Quiz 3
8 Arrays: single, double
Testing and debugging arrays
Command line arguments
Liang 6 1, 2 Main Lab Page

Lab 8

Last day to withdraw - 10/30
9 Software life cycle - design
OOD from specs
Software life cycle - maintenance
Software life cycle - system testing & debugging
  1 Main Lab Page

Lab 9

Quiz 4 - 10/29/08
10 Professionalism and ethics
Review
  ACM Ethics
1
Final Overview
Main Lab Page

Lab 10

 
11         Final Exam
Tuesday November 17, 2009
2:45p.m. - 4:45p.m.
Room 70-1445

Important Links


Important information regarding cheating and classroom conduct.