Computer Science 1 (4003-231-05)

Course Information


General Information [ PDF ]

Instructor: Reynold Bailey
Email contact: rjb@cs.rit.edu
Phone contact: (585) 475-6181
   
Office hours: Monday: 10:00 AM - Noon
  Thursday: 10:00 AM - Noon
  Room 70-3517
   
Class times: Monday, Tuesday, Wednesday
  3:00 PM - 3:50 PM
  Room: 70-1435
   
Lab times: Thursday
  8:00 AM - 9:50 AM
  Room: 70-3520 / ICL2
  Important: this lab is only for students enrolled in 231-33. 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.htm
  Contains specific information for students enrolled in section 5 of CS1 (4003-231-05).

Course Syllabus

Lecture Notes: The slides presented in class mostly contain content developed by Prof. Bayliss, Prof. Adams, and Prof. Reynolds. 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 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, 9
Liang 1
1, 2, 3 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, 21
Liang 2
1, 2, 3 Main Lab Page

Lab 2

Last day to drop/add - 09/10
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
4 Control structures - conditional statements: if and switch
Compound statements
Program flow: sequential, conditional, method call
Liang 3 1, 2, 3 Main Lab Page

Lab 4

 
5 Control structures - iteration: while, for, and do while
Program flow: iteration
Nested loops
Liang 4 1, 2 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

 
7 Principles of OOD: encapsulation
Scope and life time
Using this
Liang 7 1, 2 Main Lab Page

Lab 7

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

Lab 8

Report final exam conflicts
Last day to withdraw - 10/26
9 Software life cycle - design
OOD from specs
Software life cycle - maintenance
Software life cycle - system testing & debugging
  1, 2 Main Lab Page

Lab 9

Quiz 4
10 Professionalism and ethics
Review
  1, 2, 3 Main Lab Page

Lab 10

 
11         Final Exam

Important Links


Important information regarding cheating and classroom conduct.