Tutorial Project Evolutions

From wiki.visual-prolog.com

Written by Victor Yukhtenko. Email: victor@pdc.spb.su

This is an example of Visual Prolog project development evolution beginning from the initial idea till the today status. A very easy game has been chosen as the basic idea. We do not know the initial name of this game so we call it Polyline.

Each release expands the functionality of the application. Moving along the way the code is extended, modified and restructured or only restructured and modified.

Game description

The game is played on an M x N board.

Game rules

  • Each player on his turn adds a new point. The point must prolong the existing Polyline (or start the Polyline, if it doesn't exist).
  • The resulting Polyline must be non-interrupted and each move can be taken in any of end of the line.
  • The player, which locks the line (the point is set on the polyline), wins.
SRC Release Short Description User
Interface
PE
project 13 The demonstration of various ways of the interaction with components placed to DLLs Win
project 12 Projects family with UI - ObjectConsole, Windows. The game dimension problem solved Con/Win
project 11 Projects family with different kinds of UI - Console, ObjectConsole, Windows. The usage of Libraries. New Player added. Con/Win
project 10 Code modified. Communication with players based on events. NotificationAgency pack used. Console
project 9 Code modified. Each class generates the Object. Console
project 8 Code modified. The structure of the project reorganized. Each class placed to the separate package. Console
file 7 MultiLanguage feature. The code reorganized. Console
file 6 Multiple plays mode. Easy expansion of the list of players. The size of the field mutable. The code reorganized. Console
file 5 Computer's move based on the prognosis on the depth K moves. The code reorganized. Console
file 4 Safe computer's move - random. The code of the player-computer restructured. Console
file 3 N players. The type of the player (computer or human) - by choice. Console
file 2 Players - objects. The initial move of the computer - random. Console
file 1 Players: computer and human. The initial move by choice. Console