[Seaside] Design Question of a very small game

Alexandre Bergel bergel at iam.unibe.ch
Thu Oct 21 15:26:33 CEST 2004


Thanks a lot!

I also always appreciate English bug fix :-)

Alexandre


On Thu, Oct 21, 2004 at 12:27:10PM +0200, Avi Bryant wrote:
> 
> On Oct 20, 2004, at 10:05 PM, Alexandre Bergel wrote:
> 
> >I would like to know a bit your opinion about the code I just wrote.
> >It consist in a very small game: the computer choose randomly a number 
> >between 0 and 100, and the user has to guess it. For each answer, the 
> >computer says: 'too litle' or 'too big'.
> >
> >It is composed of 5 classes with a couple of method for each of them.
> >Do you have a better design for this simple game ?
> 
> Well, one thing that's odd is your use of SimpleGame and 
> SimpleGameTask.  There's no need to have a SimpleGame that just calls 
> SimpleGameTask as the only thing it does - just set SimpleGameTask as 
> the root component (put the class side initialize method with 
> #registerAsApplication on it instead).  And the way you do this call is 
> wrong - you send #call: from SimpleGame's #renderContentOn:, which you 
> should never do (yes, it sometimes works, but it has unpredictable 
> consequences).  I understand why you did it, but that's exactly the 
> problem that WATask was written to solve.  So dump SimpleGame and go 
> right to the task.
> 
> The other thing that strikes me is that you have no component reuse.  
> Both Victory and Loose (which should be Lose or Loss, btw) just display 
> a single text string, and could be replaced by a generic component that 
> takes the message as a parameter.  And, in fact, for a first version of 
> this game I would just use the built in dialogs (using #request: rather 
> than GetNumberComponent and #inform: rather than Victory and Loss).  
> From a teaching point of view, that might be a good first step - you'd 
> end up with a single method on a single class as the whole application 
> - and then you could progress to replacing one of the standard dialogs 
> with a custom component as you have now, etc.
> 
> HTH,
> Avi
> 
> _______________________________________________
> Seaside mailing list
> Seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/listinfo/seaside

-- 
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.iam.unibe.ch/~bergel
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.


More information about the Seaside mailing list