Учебный Проект: различия между версиями

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

м
 
(не показаны 43 промежуточные версии этого же участника)
Строка 1: Строка 1:
Пример эволюции разработки приложения от первоначальной идеи до сегодняшнего состояния. В качестве объекта разработки выбрана простая игра "Ползунок".
{{spbCopyright}}


В каждом следующем варианте расширяются функциональные возможности приложения (при этом модифицируется код с возможной его реструктуризацией) или только улучшается код.
==Мотивация==
Учебный проект является примером эволюции разработки проекта от начальной идеи до сегодняшнего состояния. Функциональной идеей Учебного Проекта является простая игра. Точное имя игры нам неизвестно, поэтому она получила название Ломаная Линия (Polyline).  


'''Описание игры'''
Каждый этап разработки представляется отдельной реализацией (Релиз), что позволяет шаг за шагом наблюдать за развитием проекта. Каждая реализация расширяет функциональные возможности проекта и/или приводит к модификации кода.  
:Изображается решетка для игры размером MxL точек.


'''Правила игры'''
Внимательное изучение кода каждой реализации позволяет осваивать технику использования языка системы программирования Visual Prolog и изучать свойства и возможности этого языка и компонентов набора средств VipSpbSDK.
:Kаждый играющий по очереди добавляет координаты новой точки, являющейся продолжением ломаной линии.  


:Получающаяся в результате траектория игры должна быть непрерывной, причем каждый последующий ход можно делать с ее любого конца.  
[[Игра "Ползунок". Правила игры|Правила игры ...]]
 
==Прежде чем начать==
Набор учебных проектов Polyline является частью VipSpbSDK - набора инструментария для разработки приложений на базе системы программирования Visual Prolog фирмы Prolog Development Center A/S (PDC) (http://www.visual-prolog.com).
 
Для построения изучения и изучения серии проектов необходимо установить стандартным образом систему программирования Visual Prolog.
 
'''{{PolylineInstall}}'''
 
Информация, связанная с версией Visual Prolog и версией VipSpbSDK помещена в [[PolylineVersionReference|Справку]].
 
В таблице ниже приведена краткая информация относительно каждой реализации.


:Игрок, который "замыкает" траекторию (т.е. ходит в точку на существующей ломаной), выигрывает.
{| cellspacing="0" border="1"
{| cellspacing="0" border="1"
|-
|-
!SRC
!SRC
!Вариант
!Версия
!Краткое описание
!Краткое описание
!User<br/>Interface
!User Interface
!PE
 
!Текст
{{example_chain
|type=проект
|release=14
|description=[[Учебный Проект. Релиз 14|Демонстрация построения проекта на базе PZL-технологии]]
|target=Win
}}
 
{{example_chain
|type=проект
|release=13
|description=[[Учебный Проект. Релиз 13|Демонстрация различных приемов и техники взаимодействия с компонентами, помещенными в DLL. Новый игрок]]
|target=Win
}}
 
{{example_chain
|type=проект
|release=12
|description=[[Учебный Проект. Релиз 12|Семейство проектов с UI - ObjectConsole, Windows. Решение проблемы размерности.]]
|target=Con/Win
}}
 
{{example_chain
|type=проект
|release=11
|description=[[Учебный Проект. Релиз 11|Семейство проектов с различными UI - Console, ObjectConsole, Windows. Использование библиотек.]]
|target=Con/Win
}}
 
{{example_chain
|type=проект
|release=10
|description=[[Учебный Проект. Релиз 10|Модификация кода. Взаимодействие с игроками осуществляется на основе событий]]
|target=Консоль
}}
 
{{example_chain
|type=проект
|release=9
|description=[[Учебный проект. Релиз 9|Модификация кода. Каждый класс является динамическим (генерирует объект)]]
|target=Консоль
}}
 
{{example_chain
|type=проект
|release=8
|description=[[Учебный Проект. Релиз 8|Модификация кода. Структура проекта реорганизована. Каждый класс помещен в пакет]]
|target=Консоль
}}
 
{{example_chain
{{example_chain
|type=файл
|type=файл
|variant=1
|release=7
|description=Игроки: компьютер и человек. Первый ход - по выбору.
|description=[[Учебный Проект. Релиз 7|Механизм мультиязычного режима.Реорганизация кода]]
|target=Консоль
|target=Консоль
|pe='''+'''
|link='''[[Игра "Ползунок" Вариант 1|Текст]]'''
}}
}}


{{example_chain
{{example_chain
|type=файл
|type=файл
|variant=2
|release=6
|description=Отличие: Игроки - динамические классы. Первый ход компьютера случайный
|description=[[Учебный Проект. Релиз 6|Режим многократных игр. Легкое добавление новых моделей игроков. Задаваемый размер поля. Реорганизация кода]]
|target=Консоль
|target=Консоль
|pe='''+'''
|link='''[[Игра "Ползунок" вариант 2|Текст]]'''
}}
}}


{{example_chain
{{example_chain
|type=файл
|type=файл
|variant=3
|release=5
|description=Отличия: N игроков. Тип игрока (компьютер, человек) - по выбору.
|description=[[Учебный Проект. Релиз 5|Выбор хода компьютером делается на основе прогноза результата на глубину '''K''' шагов. Реорганизация кода]]
|target=Консоль
|target=Консоль
|pe='''+'''
|link='''[[Игра "Ползунок" вариант 3|Текст]]'''
}}
}}


{{example_chain
{{example_chain
|type=файл
|type=файл
|variant=4
|release=4
|description=Отличия:  Небезопасный ход компьютера - случайный. Изменена структура кода класса, моделирующего компьютер.
|description=[[Учебный Проект. Релиз 4|Небезопасный ход компьютера - случайный. Изменена структура кода класса, моделирующего компьютер]]
|target=Консоль
|target=Консоль
|pe='''+'''
|link='''[[Игра "Ползунок" вариант 4|Текст]]'''
}}
}}


{{example_chain
{{example_chain
|type=файл
|type=файл
|variant=5
|release=3
|description=Отличия: Выбор хода компьютером делается на основе прогноза результата на глубину '''K''' шагов.
|description=[[Учебный Проект. Релиз 3|N игроков. Тип игрока (компьютер, человек) - по выбору]]
|target=Консоль
|target=Консоль
|pe='''+'''
|link='''[[Игра "Ползунок" вариант 5|Текст]]'''
}}
}}
{{example_chain
|type=файл
|release=2
|description=[[Учебный Проект. Релиз 2|Игроки - динамические классы. Первый ход компьютера случайный]]
|target=Консоль
}}
{{example_chain
|type=файл
|release=1
|description=[[Учебный Проект. Релиз 1|Игроки: компьютер и человек. Первый ход - по выбору]]
|target=Консоль
}}
|}
|}
[[Category:Задачи]]
 
==Комментарии к построению проектов==
{{TestedWithRu}}
 
Проекты Релизов 1-7 могут быть созданы путем копирования кода из страниц Wiki.
Начиная с Релиз 8 Проекты должны быть сгружены и установлены в соответствии с инструкциями.
 
Проекты Релизов 1-9 могут быть построены непосредственно без каких-либо дополнительных действий.
 
Начиная с релиза 10, все проекты используют переменную среды программирования IDE SpbSolutions, которая должна указывать на корневую директорию, где помещены все проекты и средства VipSpbSDK.
 
Начиная с Релиза 11, некоторые проекты демонстрируют или используют технику построения библиотек (*.lib), поэтому необходимо иметь программу lib.exe от фирмы Microsoft, помещенную в директорию 3P_Tools\MSTools (детальная информация содержится в файлах Readme.html соответствующих релизов).
 
Некоторые проекты, начиная с Релиз 13, демонстрируют и используют технику создания и применения DLL. Такие проекты могут строиться только с помощью Visual Prolog CE (см. детали в файле VersionReference.html или в [[PolylineVersionReference|Справке]]).
 
Проекты Релиза 14, помещенные в директорию PzlBasedApplication требуют выполнения процедуры регистрации компонентов после построения проектов директории Containers. Это должно быть сделано с использованием командного файла Programs\pzlBasedApplication\RegisterComponents.cmd.
 
{{PolylineBuildCMD}}
 
[[en:PolyLine Evolutions]]
[[Category:Проекты]]
[[Category:Игры]]
[[Category:Игры]]

Текущая версия на 10:40, 15 мая 2011

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

Мотивация

Учебный проект является примером эволюции разработки проекта от начальной идеи до сегодняшнего состояния. Функциональной идеей Учебного Проекта является простая игра. Точное имя игры нам неизвестно, поэтому она получила название Ломаная Линия (Polyline).

Каждый этап разработки представляется отдельной реализацией (Релиз), что позволяет шаг за шагом наблюдать за развитием проекта. Каждая реализация расширяет функциональные возможности проекта и/или приводит к модификации кода.

Внимательное изучение кода каждой реализации позволяет осваивать технику использования языка системы программирования Visual Prolog и изучать свойства и возможности этого языка и компонентов набора средств VipSpbSDK.

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

Прежде чем начать

Набор учебных проектов Polyline является частью VipSpbSDK - набора инструментария для разработки приложений на базе системы программирования Visual Prolog фирмы Prolog Development Center A/S (PDC) (http://www.visual-prolog.com).

Для построения изучения и изучения серии проектов необходимо установить стандартным образом систему программирования Visual Prolog.

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

  • VipSpbSDK_PE_73_Examples_Polyline_1_14.zip
  • VipSpbSDK_PE_73_Tools_Polyline_1_14.zip]

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

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

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

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

Информация, связанная с версией Visual Prolog и версией VipSpbSDK помещена в Справку.

В таблице ниже приведена краткая информация относительно каждой реализации.

SRC Версия Краткое описание User Interface
проект 14 Демонстрация построения проекта на базе PZL-технологии Win
проект 13 Демонстрация различных приемов и техники взаимодействия с компонентами, помещенными в DLL. Новый игрок Win
проект 12 Семейство проектов с UI - ObjectConsole, Windows. Решение проблемы размерности. Con/Win
проект 11 Семейство проектов с различными UI - Console, ObjectConsole, Windows. Использование библиотек. Con/Win
проект 10 Модификация кода. Взаимодействие с игроками осуществляется на основе событий Консоль
проект 9 Модификация кода. Каждый класс является динамическим (генерирует объект) Консоль
проект 8 Модификация кода. Структура проекта реорганизована. Каждый класс помещен в пакет Консоль
файл 7 Механизм мультиязычного режима.Реорганизация кода Консоль
файл 6 Режим многократных игр. Легкое добавление новых моделей игроков. Задаваемый размер поля. Реорганизация кода Консоль
файл 5 Выбор хода компьютером делается на основе прогноза результата на глубину K шагов. Реорганизация кода Консоль
файл 4 Небезопасный ход компьютера - случайный. Изменена структура кода класса, моделирующего компьютер Консоль
файл 3 N игроков. Тип игрока (компьютер, человек) - по выбору Консоль
файл 2 Игроки - динамические классы. Первый ход компьютера случайный Консоль
файл 1 Игроки: компьютер и человек. Первый ход - по выбору Консоль

Комментарии к построению проектов

Проверено на версии Visual Prolog 7.3 build 7302.

Проекты Релизов 1-7 могут быть созданы путем копирования кода из страниц Wiki. Начиная с Релиз 8 Проекты должны быть сгружены и установлены в соответствии с инструкциями.

Проекты Релизов 1-9 могут быть построены непосредственно без каких-либо дополнительных действий.

Начиная с релиза 10, все проекты используют переменную среды программирования IDE SpbSolutions, которая должна указывать на корневую директорию, где помещены все проекты и средства VipSpbSDK.

Начиная с Релиза 11, некоторые проекты демонстрируют или используют технику построения библиотек (*.lib), поэтому необходимо иметь программу lib.exe от фирмы Microsoft, помещенную в директорию 3P_Tools\MSTools (детальная информация содержится в файлах Readme.html соответствующих релизов).

Некоторые проекты, начиная с Релиз 13, демонстрируют и используют технику создания и применения DLL. Такие проекты могут строиться только с помощью Visual Prolog CE (см. детали в файле VersionReference.html или в Справке).

Проекты Релиза 14, помещенные в директорию PzlBasedApplication требуют выполнения процедуры регистрации компонентов после построения проектов директории Containers. Это должно быть сделано с использованием командного файла Programs\pzlBasedApplication\RegisterComponents.cmd.

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

Комплексное построение проектов

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

Командный файл Build.cmd при его использовании:

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