| Class | Topics / Activities | Resources (Readings before class) | Students' responsibilities (During and/or after class) |
|---|---|---|---|
| * 0 * Wed Sep 4, CIL 119 | Introduction to the course; Photo-taking, students' introduction; listserv, webboard; Accounts, file space organization; Discussion: computers (hardware and software), Little Man Computer model, programming languages; A first Java program: Greetings.java; compiling and running a Java program. | Send an e-mail to muresan@scils.rutgers.edu
using your preferred mailtool. Log into the webboard, create an account, and introduce yourself to the rest of the class. Read the Preface and the Welcome to Bailey's book. | |
| * 1 * Mon Sep 9, CIL 119 | Thinking algorithmically; Introduction to Java – simple examples; Basic concepts; More greetings: Greetings.java. | Preface and the Welcome to Bailey's book. | Write a Java program that writes your name with stars (*). |
| * 2 * Wed Sep 11, CIL 119 | Learning by example; Integrated Development Environments; More Java examples: Name.java, Name1.java, NamesInLoop.java, NameInMethod.java, NamesInMethod.java. | Welcome (ch. 0) to Bailey's book. | Become familiar with Forte; use tutorial in Help; Introduce various errors in the programs discussed and see what happens. |
| * 3 * Mon Sep 16, CIL 119 | Values, variables and expressions; Integer types. ComputeSum.java, ComputeSumWithIdioms.java, IntegerOperations.java; IntegerRanges.java, ComputeSum1.java, ComputeSumWithIdioms1.java. | Bailey's ch. 1. | Homework given in class; Go through all the programs discussed so far and try to understand them. |
| * 4 * Wed Sep 18, CIL 119 | Values and variables - concept re-inforcement; other Java types: float, double, boolean, char, String. Millis.java, Operations.java, Trig.java, Chars.java. | Bailey's ch. 1. | Bailey problems 1.4 (p.34) and 1.13 (p.35); Optional: Bailey problem 1.4 (p.35); Optional: write a Java program which checks whether a given number is prime. |
| * 5 * Mon Sep 23, HH A5 | Review of Java concepts learnt so far. Other Java types. Factorial.java, Two.java. | Review ch. 1 and all the previous lectures. | Homework given in class. |
| * 6 * Wed Sep 25, CIL 119 | Intro to classes and objects. Examples of classes: String, Person, Random. Person.java, RandomSample.java. | Bailey's ch. 2, first part. | Homework given in class. |
| * 7 * Mon Sep 30, HH A5
| Java quiz (40 min). Quiz solution. More on classes and objects; | Review again lecture notes 1-5, finish all homeworks; Review Bailey ch.1. | The Birthday Paradox assignment
for people who miss the quiz (because of car breakdown or other reasons).
Deadline Tue, Oct 1, 6pm - e-mail to muresan@scils.rutgers.edu. A possible solution is in Birthdays.java and the output in Birthdays.pdf. For those more advanced in Java, who tried to check the paradox within the program, a possible solution is BirthdaysCheck.java. An explanation of the birthday paradox is here. Homework given in class. |
| * 8 * Wed Oct 2, HH A5 | Conditions and loops; if, if-else, while, do-while. Game.java. | Bailey - first part of ch.3. | Assignment 1 handed out. A solution to assignment 1.
|
| * 9 * Mon Oct 7, CIL 119 | More conditions and loops. Conditional statement, for, switch; CommonErrors.java, Syracuse.java, Average.java, Break.java, Continue.java, Switch.java, BadMonth.java, Reverse.java. | Bailey - the rest of ch.3. | Homework given in class. |
| * 10 * Wed Oct 9, CIL 119 | The DrawingWindow; XMarks.java, MouseLine.java, MouseTime.java, DrawLine.java, MouseLines.java, MoreLines.java, RectInfo.java, LoopTheMouse.java. | Due: Assignment 1. Deadline: today, Wed Oct 9, 6pm.
Homework given in class. | |
| * 11 * Mon Oct 14, CIL 119
| Loops and drawings. | Homework given in class. | |
| * 12 * Wed Oct 16, CIL 119
| Drawing with color. | Test - loops and drawings. Solutions: Checkers1.java, Checkers2.java, Checkers3.java. | |
| * 13 * Mon Oct 21, CIL 119 | Methods. Timer.java, SumUp.java,
Functions.java, Predicates.java,
Converter.java. | Bailey ch.4. | Bailey pr 4.1- 4.6 (p.123). |
| * 14 * Wed Oct 23, CIL 119 | More on methods. Tricky issues: scope of variables, values vs. references, passing of parameters. Scope.java, ValRef.java, PassParam.java, SumUp.java, Hash.java, Origin.java. | Review Bailey ch4. | |
| * 15 * Mon Oct 28, CIL 119 | Classes. | Go through Bailey sections 8.1 – 8.3.
Problems 8.1 – 8.4 (p. 234) | |
| * 16 * Wed Oct 30, CIL 119 | Elements of Object-Oriented Design and Programming | Go through Bailey sections 8.1 – 8.3. | |
| * 17 * Mon Nov 4, CIL 119 | Factoring as an OO Design technique. PlayingGames1.java, PlayingGames2.java, PlayingGames3.java, PlayingGames4.java, TvShow0.java, TvShow1.java, TvShow2.java , TvShow3.java, TvShow4.java, StopWatch20.java, Die1.java, Die2.java, Die3.java. (Note. The (Stop)Watch and Die code is explained in detail in Bailey's book.) | ||
| * 18 * Wed Nov 6, CIL 119 |
Interfaces; Game5.java, TvShow5.java, OlympicGame5.java, PlayingGames5.java; DrawObjects.java Inheritance; Game6.java, TvShow6.java, OlympicGame6.java, PlayingGames6.java. | ||
* 19 * | More OOP&D. | ||
* 20 * | Strings. | ||
| * 21 * Mon Nov 18, CIL 119 | More Strings. PassParams.java, Access.java, Lookup.java, Substring.java, StringOps.java, MillionChars.java. | Assignment 2 handed out. Here's the grading scheme. Use the CodeWizard. | |
| * 22 * Wed Nov 20, HH A5 | Recitations: Strings, methods. | ||
* 23 * | Issues on assignment 2. | ||
| * 24 * Wed Nov 27, CIL 119 | Thanksgiving. | ||
* 25 * Slides in HTML | Recursion. | Assignment 2 due at 6:10pm. | |
* 26 * | Discussion of the assignment 2 and related issues. Version 1 (Harry.java), version 2 (Potter.java, Encoder.java), version 3 (HarryPotter.java, StateEncoder.java). Introduction to arrays; MonthTable.java, MonthTable2.java, Prime.java. | Bailey's ch. 7. | |
* 27 * | Arrays. Month.java, Months.java, TestArrays.java, Input.java, Sieve.java. | ||
* 28 * | Multi-dimensional arrays. Dealing with unknown number of items. Vectors and other data structures. Multi.java, DynIntArray.java, DynDouble.java, DynArray.java, UseVector.java, VectorDemo.java, VectorPoetry.java. |