2014-04-01 16:21 GMT+02:00 Roelof Wobben <r.wobben@home.nl>:
Camille Teruel schreef op 1-4-2014 15:08:
On 1 avr. 2014, at 14:52, Roelof Wobben <r.wobben@home.nl> wrote:
Hello,
Hello,
Im on this page now: http://squeak.preeminent.org/tut2007/html/017.html
I do not understand one thing.
Where do I put the initialize "script"
#initialize is not a script, it's a method. When an object is instantiated (for ex with: MyObject new) #initialize is automatically sent to it. This is the place to put your newly created object in a correct initial state. In your class, you just define a protocol named for example "initialization" where you put all the initialization-related methods. Note that protocols have no meaning, i.e. they don't change how your objects behave, they're just here to help you classify the methods of a class by concerns. So the tutorial tell you to create two methods: #initialize that is automatically called after an object has been instantiated and #initializeActiveSegments where you put some other initialization logic, that's all.
When I put it on the initializeActiveSegments then initialize get not
found.
Sorry, I don't understand.
Or must I make a seperate protocol named ActiveSegments for it.
No use the same protocol "initialization" or "initialize-release" or whatever.
Oke,
I changed it so I have this :
Laser-Game-Model with as classes: - BlankCell - Grid - MirrorCell -TargetCell
BlankCell has the following protocols: - initializing-release - testing
Initializing - release contains the following methods: - initialize - initializeActiveSegments
testing contains the following methods: isOn isOff
but when I run the test-runner I see this : MessageNotUnderstood : BlankCell >> activeSegments.
Roelof
Then you missed the last step on http://squeak.preeminent.org/tut2007/html/016.html Select "create instance var accessors" from the second popup menu.