Opgave Smalltalk -- PT 98/99

Begeleiding

A. Eliens (T333, eliens@cs.vu.nl)

Informatie

Deze informatie is ook te vinden via URL
   http://www.cs.vu.nl/~eliens/smalltalk/

Spreekuren

Gebruik bij voorkeur email voor het maken van afspraken en het stellen van vragen. Boeken kunnen op maandagmiddag geleend worden.

Opdracht -- tic-tac-toe

Realizeer het spelletje tic-tac-toe (boter, kaas en eieren) in Smalltalk. Tic-tac-toe wordt gespeeld op een grid van 3 bij 3, door twee spelers, die beurtelings een van de 9 vlakjes markeren. De speler die het eerst 3 op een rij heeft, heeft gewonnen. De computer fungeert als tweede speler. Richt het spelletje zo in dat de gebruiker kan kiezen of de computer een slimme strategie hanteert, dan wel de zetten door het toeval laat bepalen.

Opmerkingen

De grafische gebruikersinterface is een belangrijk onderdeel van het programma. Zie daartoe de voorbeelden onder DialogView en WidgetController (categorie Interface-Dialogs). Ook kan gekeken worden naar Dice.st. Kijk in de directory /home/eliens/oo/smalltalk. Het verdient aanbeveling, maar het is niet verplicht, het Model-View-Controller paradigma toe te passen.

Opstarten Smalltalk

 /opt/visual/bin/oe20 /opt/visual/image/visual.im

Oefeningen en voorbeelden

Voor een eerste kennismaking: klik op de Tools button en open de File Editor. Lees dan de file /home/eliens/oo/smalltalk/examples in.

Voor het bekijken van een voorbeeld: klik op de Tools button en open de File List. Type dan /home/eliens/oo/smalltalk/*.st en sluit af met een Return. Selecteer ..../dice.st en kies (mbv de middelste muisknop) file in. Type dan in de workspace Dice try en do it.

Inleveren

De opgave moet (per email) ingeleverd worden in een .st file, die te creeren is mbv fileout. Deze file dient een categorie Problem te bevatten waarin een klasse Problem is opgenomen zodat de aanroep ``Problem solve'' de gevraagde oplossing geeft. Bovendien moet er voor de klasse Problem een methode ``info'' gedefinieerd zijn die de naam of namen van de auteurs afdrukt.

Referenties

De taal en omgeving worden uitvoerig beschreven in Bij de begeleider kan voor enige tijd een exemplaar ervan geleend worden.

Online Documentatie

Naast het bovengenoemde boek ir er ook een online versie van van R. Andrew Painter en A. Joseph Turner (Clemson University, Department of Computer Science)