Last update: April 12, 2012
This webpage section includes recommended readings, links and brief notes.
Notice that the readings and notes may contain material not
discussed in class, and likewise, additional material
to what is recommended and posted here will be discussed in
the lectures. The information in this page will be updated as the course
progresses.
Recommended readings:
Unless otherwise specified, the chapter and section
numbers correspond to the course text, by Lewis, DePasquale and Chase,
second edition. When possible, the corresponding
chapters and sections in the textbook by Lewis and Loftus,
sixth edition and seventh edition will be indicated and it will be identified as [L&L 6th ed] and [L&L 7th ed] respectively).
(Notice that The 7th edition by Lewis and Loftus is available as e-text)
Notice also that the chapter and sections numbers
in the previous editions of Lewis and Loftus textbooks
are similar but not identical to the last editions by the same authors.
The readings and brief notes are roughly organized according to when the
corresponding topics will be discussed in the lectures;
slight changes in schedule may happen, so the coverage of some
topics may happen a week earlier or later.
Weeks 1 and 2
- General Background, Introduction.
- Introduction to Java
- Java Basics: Naming conventions, primitive types, expressions, conversions
Week 3
- String expressions, String methods, API
- Brief Review Quiz Week #3.
- Definite loops
Weeks 4,5
- Interaction with users, Scanner class. Using other predefined classes (e.g. Date).
- Methods and Parameters, first encounter
- Using Objects and Methods (Chapter 3)
- QUIZ DURING LAB TIME - Wednesday February 1
- Flow of Control(Chapter 4)[Chapter 5 L&L 6th ed, Chapters 5 and 6 L&L 7th ed]
- [Sections 4.1,4.2, 4.4, 4.5, 4.7, 4.8: LewDPasCha]
[Sections 5.1, 5.2, 5.4, 5.5, 5.7, 5.8: L&L 6th ed]
[Sections 5.1, 5.2, 5.4, 6.1, 6.3, 6.4: L&L 7th ed]
- See Lab exercises section
- Brief Notes: 10- Flow of Control
Conditionals, loops (pdf),
includes minitest and the minitest solution
(already done in class).
- Brief Notes: 10B- Flow of Control, part B (pdf)
- 10c- While-if problem
for brief assignment #3(pdf)
- See Examples section.
- See Assignments section.
- Arrays Basic (first encounter)
Week 6
- Writing (our own) Classes and Methods [Chapter 5 LewDPasCh][Chapters 4 and part of chapter 6 L&L 6th]
[Chapters 4 and part of chapter 7 L&L 7th ed]
Weeks 7,8
- Encapsulation
- Arrays (second encounter) Arrays of objects , multidimensional arrays
- QUIZ DURING CLASS - Friday February 24
- Modular design, Object oriented solutions to problems, examples
- 15-Revisiting passage of parameters.
Passing arrays, returning more than one value, the 'this' reference.
- Testing: Sections 5.9, 5.10 (we mainly see these topics in labs and via exercises)
[section 6.9 L&L 6th ed, section 7.9 L&L 7th ed]
- 16-Design Guidelines.
(Structured, modular, OO) Problem solving: design, analyzing and coding stages.
- 16B-Design Guidelines and Java.
(Static - non static methods and variables. Organizing code. main method).
- See Assignments section for:
- general and detailed description of the "design, code and revise" assignment
- "Problem solving suggestions" document
- initial documentation and code for assignment.
- See Examples
Weeks 9, 10
- MIDTERM DURING CLASS TIME - Wednesday March 7. Room B9200
- Q&A about assignment RollTTT
- Recursion, different types of recursion
- Recursion, minitest, recursion and arrays (brief)
- Another data structure: ArrayLists, wrapper classes
Weeks 11, 12, 13
- Revisit Object Oriented Design, UML - a more detailed look
- Object Oriented Design - Inheritance
- Object Oriented Design - Example - final project
- Object Oriented Design - Polymorphism, Interfaces, Abstract classes
- Current textbook:
- Sections 9.1, 9.2, 9.3,
- Section 9.4 (do not worry about the GUI subsection)
- Sections 13.1, 13.2 (paying attention to Polymorphism)
- [L&L 6th ed],
- Sections 6.5, 9.1, 9.2, 9.3,
- Section 9.4 (paying attention to Polymorphism)
- Section 9.6
- [L&L 7th ed],
- Sections 7.5, 10.1, 10.2, 10.3,
- Sections 10.4 (paying attention to Polymorphism)
- Brief Notes: 29 - Polymorphism with Inheritance
(slides in pdf format)
- Brief Notes: 30a - Abstract classes (slides in pdf format)
- Brief Notes: 30b - Polymorphism with Interfaces
(slides in pdf format)
- See Examples
- Exceptions brief
- Time complexity, analysis of algorithms - brief
- Solution to "Wizards" Project
Ending the course
- Brief Notes: 35 - Where are we - topics seen, announcements (slides in pdf format)
- Final Exam: Week 15, Monday April 16, 3:30 pm -- 6:30 pm
- Room: SWH 10081
- Topics coverage and exam style are posted in the Tests
section.
- Check your email for any further announcements.
- Review class: Friday April 13, 1:30 - 3:00 pm, TASC-I 9204