Introduction. I. FOUNDATIONS OF OBJECT-ORIENTED PROGRAMMING AND SQUEAK.
1. Objects, Smalltalk, Dynabooks, and Squeak: Where the Objects Come From. Object-Oriented Programming. Birth of Objects. A Personal Computer for Children of All Ages. Back to the Future. Common Ancestry of Other Object-Oriented Languages.
2. A Tour of Squeak. Basic Rules of Smalltalk. Doing Normal Things in Squeak. Doing Object Things in Squeak. Using Squeak. Tools and Strategies: Finding More in Squeak. How Do You Make an Application in Squeak?
3. Your First Program: Joe the Box. Adele Goldberg's Joe the Box. Tools and Strategies: Filling in New Code. Playing with Boxes. Creating the Box Class and Box Instances. Basics of Drawing. Extending Box to Create NamedBox. Tools and Strategies: How to Go from Sample Code to Reuse. Improving Boxes: Efficiency, Animation, and Design.
4. Designing Object Systems. The Object-Oriented Design Process. Your First Design: A Clock. Specializing Clock as an AlarmClock. Reusing the Clock and AlarmClock. Implementing Models. Rules of Thumb for Good Object-Oriented Designs. Tools and Strategies: Programming in Groups.
5. Building User Interfaces in Squeak. Issues in Building a Use Interface. Developing Model-View-Controller. Building Pluggable User Interfaces in Squeak. Building Morphic User Interfaces. Tools and Strategies: Using Morphs That You Haven't Met Yet.
6. Designing User Interfaces in Squeak. Know Thy Users for They Are Not You. Understanding the User. Matching Users to Interface: Avoiding User Error. A User-Interface Design Process. Critiquing Our Clock Interface. Evaluation of User Interfaces.
7. Multimedia Nuts-and-Bolts. Text. Graphics and Animation. Sound. New Media in Squeak. Making the Dynabook in Squeak.
II. CASE STUDIES.
8. Case Study: Audio Notes. Motivation for Audio Notes. Using Audio Notes. Details on Use. Object-Oriented Design and Programming of Audio Notes. Evaluating the Design and Interface.
9. Case Study: Pluggable Web Server and Swiki. Networking Support of Squeak. Swiki as a PWS Application.
10. Case Study: MAT (Multimedia Authoring Tool). Motivation for and Use of MAT. Object Design and Programming in MAT. User Evaluation of MAT.
11. Case Study: Prototyping a Playwriting Workbench. Motivation and Setting the Goal. Object Analysis of the Workbench. Implementation of the Play Workbench. Iterating on the PlayBench. Evaluating the PlayBench: Expert Evaluation and Observation.
Appendix: A Quick-Start Guide of Squeak Examples. Constants. Control Structure Expressions Involving Blocks. Testing Objects. Basic Object Behavior. Boolean Operations. Magnitude and Number Operations. Character Operations. Collection Operations. String Operations.
Index.