Opentextbooks
Squeak by Example
Oscar Nierstrasz, Stéphan Ducasse, Damien Pollet
Computers & Technology
Squeak by Example
Free
The publisher has enabled DRM protection, which means that you need to use the BookFusion iOS, Android or Web app to read this eBook. This eBook cannot be used outside of the BookFusion platform.
Description
Contents
Reviews

Squeak is a modern open-source development environment for the classic Smalltalk-80 programming language. This book, intended for both students and developers, will guide you gently through the language and tools by means of a series of examples and exercises. We are making this book available to you under the Creative Commons Attribution-ShareAlike 3.0 license. You can either download the PDF for free from SqueakByExample.org, or you can buy a softcover copy from lulu.com. (You can also pay for the PDF download from lulu.com, if you would like to make a contribution to this effort.) Additional material is available from the book's web page at SqueakByExample.org.

Language
English
ISBN
978-3-9523341-0-2
Portland State University
PDXScholar
2009
Squeak by Example
Andrew P. Black
Stéphane Ducasse
Oscar Nierstrasz
Damien Pollet
Damien Cassou
See next page for additional authors
Let us know how access to this document benefits you.
Citation Details
Authors
Preface
Getting Started
A quick tour of Squeak
Getting started
The World menu
Saving, quitting and restarting a Squeak session
Workspaces and Transcripts
Keyboard shortcuts
SqueakMap
The System Browser
Finding classes
Finding methods
Defining a new method
Chapter summary
A first application
The Quinto game
Creating a new class Category
Defining the class SBECell
Adding methods to a class
Inspecting an object
Defining the class SBEGame
Organizing methods into protocols
Let's try our code
Saving and sharing Smalltalk code
Chapter summary
Syntax in a nutshell
Syntactic elements
Pseudo-variables
Message sends
Method syntax
Block syntax
Conditionals and loops in a nutshell
Primitives and pragmas
Chapter summary
Understanding message syntax
Identifying messages
Three kinds of messages
Message composition
Hints for identifying keyword messages
Expression sequences
Cascaded messages
Chapter summary
Developing in Squeak
The Smalltalk object model
The rules of the model
Everything is an Object
Every object is an instance of a class
Every class has a superclass
Everything happens by message sending
Method lookup follows the inheritance chain
Shared variables
Chapter summary
The Squeak programming environment
Overview
The System Browser
Monticello
The Inspector and the Explorer
The Debugger
The Process Browser
Finding methods
Change sets and the Change Sorter
The File List Browser
In Smalltalk, you can't lose code
Chapter summary
SUnit
Introduction
Why testing is important
What makes a good test?
SUnit by example
The SUnit cook book
The SUnit framework
Advanced features of SUnit
The implementation of SUnit
Some advice on testing
Chapter summary
Basic Classes
Object
Numbers
Characters
Strings
Booleans
Chapter summary
Collections
Introduction
The varieties of collections
Implementations of collections
Examples of key classes
Collection iterators
Some hints for using collections
Chapter summary
Streams
Two sequences of elements
Streams vs. collections
Streaming over collections
Using streams for file access
Chapter summary
Morphic
The history of Morphic
Manipulating morphs
Composing morphs
Creating and drawing your own morphs
Interaction and animation
Interactors
Drag-and-drop
A complete example
More about the canvas
Chapter summary
Advanced Squeak
Classes and metaclasses
Rules for classes and metaclasses
Revisiting the Smalltalk object model
Every class is an instance of a metaclass
The metaclass hierarchy parallels the class hierarchy
Every metaclass Inherits from Class and Behavior
Every metaclass is an instance of Metaclass
The metaclass of Metaclass is an Instance of Metaclass
Chapter summary
Appendices
Frequently Asked Questions
Getting started
Collections
Browsing the system
Using Monticello and SqueakSource
Tools
Regular expressions and parsing
Bibliography
Index
The book hasn't received reviews yet.