Tutorial Project Evolutions
Written by Victor Yukhtenko. Email: victor@pdc.spb.su
Motivation
This is an example of the evolution of the project development 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 development step represented as the release, so you can see step by step the evolution of the application. Each release expands the functionality of the application, moving along the way the code is extended, modified and restructured or only restructured and modified.
Looking carefully on the code of each release you can see technique of the using of the Visual Prolog and advanced tools. It can be used to study the Visual Prolog features.
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.
Before you start
VipSpbSDK_PE_73_Examples_Polyline is part of the VipSpbSDK. VipSpbSDK - is the set of tools to develop applications based on Visual Prolog from Prolog Development Center A/S To build and study projects of series you must install [Prolog programming system]
The reference information regarding the features depending on the vesrion of the Visual Prolog and version of the VipSpb SDK please see in the Version Reference. Short information regarding each release may be found in the table below.
Building notes
Tested with Visual Prolog 7.3 build 7302.
Releases 1-7 projects may be easily created by copying the code directly from the wiki pages. Since Release 8 you need to download the set of projects.
Releases 1-9 projects may be built one by one without any tricks.
Since Release 10 all projects use SpbSolutions IDE variable, which must refer to the VipSpbSDK directory.
Since Release 11 some projects demonstrate building libraries, thus user must have Microsoft lib.exe program tool (see details in the release appropriate Readme.html file).
Some Projects since Release 13 demonstrate and use the DLL creation. So these projects must be built using VIP CE only (please see details in Version Reference).
Projects placed to the Release 14 (Polyline14) PzlBasedApplication folder need to run the registration procedure after building all projects placed to the Containers directory. This must be done using the Programs\pzlBasedApplication\RegisterComponents.cmd command file.
To build projects the IDE variable SpbSolutions must be set to the VipSpbSDK directory.
The complex building
To simplify the settings and initial building of applicaions the Build.cmd command file included (BuildPersonal.cmd - please see details in Polyline Version Reference or in Examples\Polyline\VersionReference.html).
The use of Build.cmd file:
- sets the SpbSolutions IDE variable, which refers to the VipSpb SDK directory;
- "knows" where Visual Prolog is installed and uses VipBuilder.exe;
- builds all projects containing in the subfolders;
- builds all needed libraries;
- registers all pzl-Components (if needed);
- informs regarding the result of each building operation;
- Build.cmd file may be used together with the Visual Prolog CE only (please see details in Polyline Version Reference or in Examples\Polyline\VersionReference.html).