Chapter Contents - DrCuis/TheCuisBook GitHub Wiki
Items from each Thread to be covered in each Chapter
Please see the Threads page first, where we are collecting all the topics we want to cover. The text for each chapter should interwine content for each thread in a meaningful narrative. A possible sketch of the contents of a some chapters. Chapters from former book draft: -[GS]: Getting Started -[CSS]: Cuis-Smalltalk Syntax
Preface
[new]
Chapter 1 - Smalltalk Philosophy
Smalltalk Design
- [new] Philosophy (abridged). History (abridged). Objectives and general attitude of Smalltalk.
Environment
- [GS] Installing and starting Cuis
- [GS] World menu. Preferences
- [GS] SystemWindows
Class Library
- [GS] String basics
- [GS] Number basics
- [GS] Transcript basics.
Tools
- [GS] Workspace and Transcript.
- [GS] Evaluation of Smalltalk expressions
Language elements
- [GS] Numeric literals.
- [GS] Syntax examples: binary messages
Spacewar!
- [new] Description and significance
- [new] Elements of a game
Chapter 2 - The Message Way Of Life
Smalltalk Design
- [new] Concepts: Instances. Messages. Methods
- [CSS] Concepts: Message send. Expression evaluation.
Environment
- [GS] SystemWindows. Text editor menus. Keyboard shortcuts.
Class Library
- [GS] String basics. Binary, Unary, Keyword message examples. Without talking about classes!
- [GS] Number basics. Binary, Unary, Keyword message examples. Without talking about classes!
- [GS] Transcript. Binary, Unary, Keyword message examples. Basic protocol. Informal.
Tools
- [GS] Browser. Class and method categories. Exploring a class: definition, comment, instance methods. Writing code: class.
Language
- [GS] Binary messages
- [GS] Unary messages
- [GS] Keyword messages
- [GS] Class
Spacewar!
- [new] Models (classes declaration)
Chapter 3 - Classes
Smalltalk Design
- [new] Concepts: Classes, Instance and Class Methods. (already in chap 2) --> old ch1-1.3.1
- [new] Concepts: Message send. Expression evaluation. (already in chap 2)
Environment
- [new] Taskbar
Class Library
- [GS] Numerics (bases, representations)
- [GS] String
Tools
- [GS] Browsers. Exploring a class: class methods.
Language
- [GS] Classes.
Spacewar!
- Models state and behavior (instance side)
Chapter 4 - Collection
Smalltalk Design
- Collecting and iterating
Environment
- stuff
Class Library
- [GS] Collection basics
Tools
-
- [GS] Browsers. Exploring a class: protocol, hierarchy.
Language
- Variable
Spacewar!
- Model state and behavior
Chapter 5 - Control Flow Messaging
Smalltalk Design
- [CSS] Concepts: pseudovariables
Environment
- [new] Basic morphs. Halos
Class Library
- [CSS] Boolean. True. False. true. false.
- [CSS] Control flow as messages.
Tools
- [new] Browser. Writing code: method.
Language
- [CSS] Block
- [CSS] Control flow as messages
Spacewar!
- Models (behaviors with control flow)
Chapter 6 - Visual With Morph
Smalltalk Design
- Morphic concept
Environment
- Basic morphs (e.g. Ellipse Morph )
- Halos (debug->inspect morph, restart drawing)
- Halos: resize, pick up a morph & embed it then move
- Mouse & keyboard events (outline)
- How the UI works.
Class Library
- Morphic
- Explain the Morphic differences between move and pick-up
Tools
- Inspector. Edit a morph properties #color:, #borderWidth:, etc. by code
- Browser. Searching a class (e.g. EllipseMorph)
Language
- Class categories. Method categories. (Already discussed in previous chapters, we can discuss from the code pov as Juan proposed in Thread page)
Spacewar!
- Explain how the game play will be designed with Morph and which Morph
Chapter 7 - Model And View
Smalltalk Design
- stuff?
Environment
- [new] Focus. Events. Event handling.
Class Library
- [GS, new] Collection advanced topics
- [new] MorphicWindows. Models and Views.
Tools
Language
- [new] Model - View decoupling in Morphic
Spacewar!
- [new] Model & view
Chapter 8 - Events
Smalltalk Design
- stuff?
Environment
- [new] Focus. Events. Event handling.
Class Library
- [new] Events
Tools
- [new] Debugger. Restart. Step: into, over, through.
Language
- [new] stuff?
Spacewar!
- [new] simulation
Chapter 9 - Process
Smalltalk Design
- stuff
Environment
- stuff
Class Library
- [new] Processor. Priorities.
Tools
- [new] Process List. CPUWatcher.
Language
- [new] Code Packages
Spacewar!
- [new] Interaction
Chapter 10 - Code Management
Smalltalk Design
- stuff
Environment
- stuff
Class Library
- stuff
Tools
- [new] Message List
- [new] Inspector
- [new] Object Explorer
Language
- [new] ChangeSets
Spacewar!
- [new] Control
Chapter X
Smalltalk Design
- stuff
Environment
- stuff
Class Library
- stuff
Tools
- stuff
Language
- stuff
Spacewar!
- stuff