On 1 avr. 2014, at 16:39, Roelof Wobben <[email protected]> wrote: > Camille Teruel schreef op 1-4-2014 16:34: >> >> On 1 avr. 2014, at 16:21, Roelof Wobben <[email protected]> wrote: >> >>> Camille Teruel schreef op 1-4-2014 15:08: >>>> On 1 avr. 2014, at 14:52, Roelof Wobben <[email protected]> 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. >> >> This error means "instances of BlankCell does not understand the message >> #activeSegments" that's all, this part of your program is not implemented >> yet. >> > > Im not agree with you according to the tutorial on this page : > http://squeak.preeminent.org/tut2007/html/019.html there is a error with isOn > and isOff.
There is no way to be agree or not with that, MessageNotUnderstood is an error thrown when a message is ..., well, ... not understood. So no method named activeSegments is defined in BlankCell hierarchy, it's as simple as that. > #activeSegments schould be implemented by now. Well according to the DNU error, it is not. So I guess you missed some step in the tutorial. > > Roelof >
