Preliminary version from Aug 10, 2007 with some additions from Jan 01, 2016.
Distribution is encouraged, comments are welcome and should be mailed to the editor.
Editor: Boris.Gaertner@bildungsgueter.de
This is a tutorial from 2007 which covers a topic that has lost most of its former importance. It is kept available for the benefit of those who seek in-depth information about out-dated versions of Smalltalk.
The tutorial covers the use of the MVC graphical user interface in Squeak. It also covers the use of Smalltalk in general, but it does not cover the use of the Morphic GUI.
Recommended version of Squeak: 3.7 [more about versions]
MVC is seriously damaged in all newer versions of Squeak. It is therefore recommended that you install the version 3.7 from 2004. Here is an explanation how to do that.
To try the examples of this tutorial, you have to create and to enter an MVC project.
This depends on both your knowledge and your needs:
It is not difficult at all to give you a few simple demo programs. It is much more difficult to develop the essential ideas of MVC with a set of carefully built examples. A preliminary version of this tutorial was merely a collection of simple demo programs. This version tries to give you a more carefully designed introduction to the essential ideas of MVC.
The first publication about the MVC metafor:
http://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html
Here you find papers written in 1979 by Trygve Reenskaug. The paper
from May 1979 describes work that was done at Xerox with an early
Smalltalk system. This is not a tutorial, but certainly it is
inspiring reading.
A Tutorial written by Steve Burbeck:
ftp://st.cs.uiuc.edu/pub/Smalltalk/st-docs/mvc.rtf
http://st-www.cs.uiuc.edu/users/smarch/st-docs/mvc.html
A Tutorial written by Stephen Pope and Glenn Krasner:
http://www.ccmrc.ucsb.edu/~stp/PostScript/mvc.pdf
This was the first really good explanation of MVC. Regrettably,
the examples are for Smalltalk-80 and some methods of Smalltalk-80
are not available in Squeak. Nevertheless, I recommend this tutorial.
For your convenience, I included change sets for the
examples that are modified for use with Squeak.
A book about Smalltalk-80:
LaLonde, Pugh: Inside Smalltalk II
Prentice Hall 1991
ISBN: 0-13-465964-3
This book gives an in-depth presentation of the MVC framework as
it was implemented for Smalltalk-80. It MVC framework of Squeak
is very close to MVC for Smalltalk-80.
Also a book about Smalltalk-80:
Pinson, Wiener:
An Introduction to Object-Oriented Programming and Smalltalk
Addison-Wesley 1988
ISBN: 0-201-19127-X
This is also an in-depth presentation of Smalltalk-80.
Chapters 9 and 11.4 contain interesting stuff about MVC.
There is a lot of helpful literature available in the Internet. You may wish to check these internet pages:
Squeak itself has its own internet presence at
http://www.squeak.org
A collection of tutorials for various Smalltalks can be found at
http://www.whysmalltalk.com/tutorials
For Smalltalk in general, please have a look at:
http://www.iam.unibe.ch/~ducasse/FreeBooks.html
Here you find complete books about various Smalltalks. Some of these
books cover Smalltalk implementations that are quite different from Squeak,
but all these books can be used to learn a lot about Smalltalk in general.
Most of the books on this site are in PDF format.
A very complete generated documentation:
http://www.oldenbuettel.de
This documentation contains all class comments and all method comments
of the Squeak 3.2 image. You can download the complete documentation or
you can read it online.
A detailed explanation of change sets and the use of the change sorters:
http://minnow.cc.gatech.edu/squeak/uploads/changesets.pdf
This work is licensed under a Creative Commons Attribution 4.0 International License.