Розробка ігрової програми для мобільних пристроїв з сенсорним екраном студента 4 курсу

Вид материалаДокументы

Содержание


3.2 Профілі і конфігурації
Розділ 4. Завдання 4.1 Постановка задачі
4.2 Опис гри
Подобный материал:
1   2   3   4   5   6   7

3.2 Профілі і конфігурації


Мова програмування Java незалежна від архітектури, в силу того, що використовує інтерпретатор, який перекладає байт-код, згенерований компілятором в машино – незалежний код. Інтерпретація коду здійснюється під керуванням системи виконання, так званої віртуальної Java машини. Цей механізм створює середовище виконання пристосунків. Середовище виконання в свою чергу, висуває певні вимоги до властивостей мови програмування Java, побудовані на основі специфікації Java Language Specification, розробленої компанією Sun Microsystems. При написанні програм на Java активно використовується бібліотеки Java API, без яких написати реальну програму майже не можливо. Ці бібліотеки містять велику кількість наперед визначених інтерфейсів, класів, методів, констант, що допомагають програмісту створювати робочі додатки, за мінімальні терміни.[3]

Невеликі розміри портативних приладів накладають значні обмеження на процесор, пам’ять, дисплей, пристрій вводу, але платформа Java ME розроблена спеціально для того, щоб створювати програми, орієнтовані саме на такі портативні пристрої.

Середовище виконання програм Java, повинне знаходитись всередині портативних пристроїв, за це відповідає їх виробник, це і характеризує конкретний пристрій, як пристрій, що підтримує технологію Java.

Існує велика кількість портативних пристроїв, що підтримують Java, але потужність, і відповідно, їх можливості різні. Тому платформа Java ME розроблена у вигляді блочної моделі модулів, конфігурацій і профілів.

Конфігурація визначає властивості мови Java і віртуальної Java машини, а також набір доступних бібліотек Java API. Профіль, в свою чергу, висуває вимоги до апаратної частини приладу і може містити раяд додаткових бібліотек Java, спрямованих на роботу з конкретним пристроєм.

Платформа Java ME складається з двох конфігурацій CDC (Connected Device Configuration – кофігурація пристроїв, що підключаються) і CLDC (Connected Limited Device Configuration - кофігурація пристроїв, що підключаються з обмеженями). Кожна з конфігурацій визначає своє сімейство пристроїв. При програмуванні для мобільних телефонів використовується конфігурація CLDC. Кожна з конфігурацій містить свої профілі, які надбудовуються над своєю конфігурацією. Коли програміст створює програмне забезпечення для портативних пристроїв, він повинен знати під який профіль і конфігурацію пише програму, а виробник пристрою повинен здійснювати підтримку того чи іншого профілю в зв’язці зі своєю конфігурацією.

Конфігурація CDC об’єднує ряд пристроїв, що мають постійне мережне підключення, наприклад телевізійні приставки, автомобільні системи навігації тощо. Конфігурація CLDC розрахована на сімейство мобільних пристроїв, таких як телефони, органайзери, КПК. Для таких пристроїв характерні 16 або 32 розрядні процесори, 160-521 Кб пам’яті для платформи Java ME, бездротове мережеве підключення, живлення від акумулятора. Конфігурації СDC і CLDC незалежні одне від одного і не можуть використовуватись разом.

Існують дві версії конфігурації: CLDC 1.0 i CLDC 1.1. Конфігурація 1.1 має більше можливостей, наприклад, підтримку чисел з плаваючою точкою, що в свою чергу робить серйознішими вимоги до апаратної частини.

Єдиний доступний профіль в конфігурації CLDC називається MIDP (Mobile Information Device Profile – інформаційний профіль мобільних пристроїв). Цей профіль має три версії 1.0, 2.0, 2.1. Всі телефони, що підтримують Java, сумісні з профілем MIDP 1.0, який був сформований припочтаковому створенні плтформи Java ME і містить в собі певний набір API. З виходом MIDP 2.0 було додано ряд нових бібліотек, що покращили процес створення програм для мобільних телефонів. Профіль MIDP 2.1 не значним чином відрізняється від 2.0. в ньому були посилені вимоги до специфікацій і безпеки, що практично не вплинуло API.[1]

Отож, програмний продукт, створений розробниками орієнтований на конкретний профіль, який є специфікацією, що встановлює певні вимоги до апаратної частини телефону, а також містить додаткові бібліотеки. Кожен конкретний профіль надбудовується над своєю, тільки йому доступною конфігурацією. Конфігурація висуває вимоги до віртуальної Java машини і властивостей мови Java. Далі йде тісна взаємодія з апаратним забезпеченням телефону, через наявні сервіси, які надаються операційною системою або прошивкою телефону. Даний рисунок ілюструє цей ланцюжок взаємодії. Така модульність в побудові Java ME дає необмежені можливості в модернізації усієї платформи і написанні справді апаратно-незалежного коду програми.

Розділ 4. Завдання

4.1 Постановка задачі


Запропонувати програмну реалізацію гри жанру Tower Defence, на базі платформи Java Platform Micro Edition, для мобільних пристроїв з сенсорним екраном. Програма повинна бути розрахована на керування з допомогою пальця або стилуса.


4.2 Опис гри


Гра відбувається на карті, що складається з клітинок. Клітинки бувають чотирьох типів: місця придатні для розміщення вежі, точка появи монстрів, дорога по якій вони можуть рухатись і ціль, куди вони прямують. Мета гравця – не дозволити монстрам добратися до їх цілі, для цього він розміщує оборонні вежі вздовж дороги. Доступні кілька видів веж з різними показниками сили, скорострільності, радіусу дії, і, відповідно, ціни. Гравець може змонтувати вежу на придатній клітинці, якщо у нього достатньо для цього ресурсу. Також вежа може бути розмонтована, при цьому ресурс витрачений на неї повернеться. Монстри також бувають різних видів в залежності від показників їх швидкості, живучості, і кількості ресурсу, яку отримує гравець за знищення монстра.

Гра може проводитись у кількох варіантах: проходження компанії раунд за раундом, чи в режимі гри на виживання. Раунд гри закінчується перемогою, коли гравець знищить певну задану кількість монстрів, тоді він переходить в наступний раунд, який може відбуватися вже на інакшій карті, або поразкою, якщо кілька монстрів зможуть пройти карту. В режимі на виживання, гравець повинен захищатися від безкінечної послідовності монстрів, що постійно генеруватимуться. В такому варіанті гра триває до програшу, або поки гравець її не зупинить, як результат – враховується кількість знищених монстрів.