Учебный Проект. Релиз 11

Материал из wikiru.visual-prolog.com

Автор: Виктор Юхтенко. Email victor@pdc.spb.su

Очередная версия Учебного проекта, функциональной идеей которого является простая игра.

Правила игры ...

Цель

Демонстрация приемов программирования приложений на языке Visual Prolog:

  • Разниица в методологии построения консольных и оконных приложений;
  • Создание библиотек (LIB), написанных на Visual Prolog;
  • Отделение логики от пользовательского интерфейса.

Функции

Фрагмент Краткое описание Детали Видео
ConsoleSmall.jpg Построчная организция cценария диалога с пользователем в текстовой форме (на базе концепции PFC/Console) Нет Сгрузить и смотреть видео... (архив 640 Kb)
ObjectConsoleSmall.jpg Организация взаимодействия с пользователем на базе интерфейсных компонентов типа "кнопка", "строковый редактор" и проч. с управлением мышью.

Построена на базе концепции PFC/Console. Концепция организации кода похожа на PFC/GUI, в том числе путем организации механизма событий.

Cм. детали... Сгрузить и смотреть видео... (архив 2.33 Mb)
ObjectWinSmall.jpg Стандартный для Windows пользовательский интерфейс на базе концепции PFC/GUI. Нет Сгрузить и смотреть видео... (архив 2.9 Mb)

Известная проблема

Начиная с некоторых значений произведения <размер поля>x<число раундов в cериальных играх> в ходе игры приложение исчезает. Причина описана в разделе Код.

Эта проблема решена в проекте Релиз 12.

Код

  • Проверено на версии Visual Prolog 7.3 build 7302.
  • Release 11 представляет ряд проектов, которые имеют единую логику игры и управления, но различаются видом пользовательского интерфейса - Соnsole, ObjectConsole, Windows).
  • Некоторые компоненты представляются либо в виде исходных кодов (.PRO) либо в виде библиотек (LIB), написанных на VIP (представлены соответствующие альтернативные проекты). Представлен командный файл (.CMD), позволяющий строить библиотеку пользовательского интерфейса.

При построении библиотек использована программа LIB фирмы Microsoft (Microsoft Linker Stub 7.10.3077), помещенная в директорию 3P_Tools/MSTools.

  • Существенным для проектов семейства release 11 является строгое отделение кода логики от кода, представляющего Пользовательский интерфейс.

Все проекты используют общий набор классов, поддерживающих логику игры и управления конфигурацией игры и ее ходом.

Но каждый проект использует собственную концепцию пользовательского интерфейса. Это дает возможность создавать и другие виды пользовательских интерфейсов, например, основанных на представлениях HTML или XML или даже с использованием других языков, оперирующих элементами пользовательских интерфейсов.

  • Структура кода логики управления конфигурацией и игрой в целом в принципе позволяет использовать логическую часть без изменения для организации класса подобных игр на плоскости, заменяя модуль, отвечающий за соблюдение правил игры (JuniourJudge).

Естественно, модели игроков в этом случае должны соответствовать правилам игры.

Установка

Если Вам нужен полный набор проектов серии Polyline (персональная версия), сгрузите и разархивируйте файлы архивов, пользуясь ссылками на форуме PDC ЗДЕСЬ

  • VipSpbSDK_PE_73_Examples_Polyline_1_14.zip
  • VipSpbSDK_PE_73_Tools_Polyline_1_14.zip]

в удобную для Вас директорию.

Коммерческая версия представлена в виде одного архива и может быть получена Здесь.

Оплата в любой из указанных валют. При оплате с рублевой кредитной карты валюта оплаты конвертируется в рубли по курсу банка-эмитента карты.

Директория с именем VipSpbSDK будет создана автоматически.

Если у Вас установлен VipSpbSDK, то следует открыть проект Examples\Polyline\Polyline11\Polyline11.prj

Построение

Ознакомьтесь предварительно с особенностями Вашей версии

Откройте и постройте проекты:

  • Polyline11_Console - консольное приложение
  • Polyline11_ObjectConsole объектно-ориентированное консольное приложение
  • Polyline11_ObjWindows - Windows PFC/GUI

Выполните командный файл Programs\BuildHumanInterfaceLib.cmd

  • Откройте и постройте проекты, использующие библиотеки пользовательских интерфейсов:
  • Polyline11_ConsoleLib;
  • Polyline11_ObjectConsoleLib;
  • Polyline11_ObjWindowsLib

Для построения проектов переменная SpbSolutions должна быть установлена как маршрут к директории, где располагается VipSpbSDK.

Для упрощения начального построения и выполнения всех необходимых настроек имеется командный файл Build.cmd (BuildPersonal.cmd - в зависимости от версии, детали см. в файле VersionReference.html).

Командрый файл Build.cmd:

  • настраивает переменную среды программирования IDE SpbSolutions, применительно к условиям установки;
  • "знает", где установлена система Visual Prolog и программа VipBuilder.exe;
  • производит построение всех проектов, включая проекты в поддиректориях;
  • производит построение всех необходимых библиотек;
  • информирует об успешном или неуспешном завершении каждой операции;
  • может быть использован только совместно с версией Visual Prolog CE (детали см в файле VersionReference.html).

Запуск

  • Запуск приложения из среды по E или запустить исполняемое приложение из директории EXE.
  • Язык приложения определяется помещением в командной строке идентификатора языка:
    • ru - русский
    • en - английский
  • При запуске из среды IDE параметр языка помещается в поле формы "Project Settings"\Run Options\Run Arguments, получаемой из меню Project\Settings...