Squeak : Object-Oriented Design with Multimedia Applications
For Sophomore/Senior-level courses in Object-Oriented Programming or Comparative Programming Languages where a book on object-oriented language is required.This innovative text teaches object-oriented programming using Squeak-a powerful, freely available language that is highly effective for teaching object-oriented programming. Using a focus on the basics and compelling case studies, the text covers the whole process of object-oriented development-from object-oriented analysis and design, through user interface design and application evaluation.
- Paperback | 306 pages
- 176 x 230 x 18mm | 557.93g
- 20 Dec 2000
- Pearson Education (US)
- Upper Saddle River, NJ, United States
Back cover copy
This innovative text teaches object-oriented programming using Squeak--a powerful, freely available language that is highly effective for teaching object-oriented programming. Using a focus on the basics and compelling case studies, the text covers "the whole process" of object-oriented development--from object-oriented analysis and design, though user interface design and application evaluation.FEATURES/BENEFITSFree Squeak CD with bookCD includes version 2.7 of Squeak compatible with Windows 95/98/NT, WindowsCE, Macintosh, Linux, Solaris, SGI, Acorn, BeOS. Also includes source code for examples, Squeak extras, and lecture notes in PowerPoint and Squeak-native formats.Focus in SqueakGives both professionals and students great flexibility in working in an exciting environment that supports the latest in multimedia, including 3-D computer graphics, MIDI audio, and Flash animations. It is the first printed documentation for Squeak's advanced features, Morphic user interface, and support for multimedia.Rich description of object-oriented process.Introduces readers to an object-oriented design process, using UML standard class diagrams.A user interface design and evaluation process.Leads users through constructing user interfaces, then designing and evaluating user interfaces. Case studies present the design and implementation of exciting multimedia applications, then follow-up with real evaluation results from interaction with users.
Table of contents
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.
"In Squeak, you have your hands in one of the most late bound, yet practical, programming systems ever created. It is also an artifact which is wide, broad, and deep enough to permit real scientific study, creation of new theories, mathematics, engineering constructions, and even its own successor! Please use this book to learn how to do all of the above."-Alan Kay, V-P Research, Disney Imagineering"The text presents OO concepts in the context of Smalltalk (Squeak), which is by far the best environment and language in which to learn the concepts. The author is clearly enthusiastic about the subject matter...authoritative in explaining the basics of Smalltalk."-Keith R. Pierce, St. Paul Companies
About Mark J. Guzdial
MARK GUZDIAL is an Associate Professor with the College of computing at the Georgia Institute of Technology. His research focuses on learning sciences and technology, specifically, "collaborative Dynabooks," which are tools that support learning through collaborative multimedia construction. He has been teaching object-oriented analysis, design, and programming in Smalltalk for over five years. He received the Ph.D. degree in Education and Computer Science from the University of Michigan. Georgia Tech praised his teaching with an award for "Outstanding Use of Educational Technology" (1997). He has received a prestigious National Science Foundation CAREER Award. He is on the editorial boards of IEEE Multimedia, Journal of the Learning Sciences, Journal of Interactive Learning Research and Interactive Learning Environments Journal.