Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KryK_KN-4-1(1).docx
Скачиваний:
0
Добавлен:
26.12.2019
Размер:
2.41 Mб
Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

НАЦІОНАЛЬНИЙ ТРАНСПОРТНИЙ УНІВЕРСИТЕТ

ФАКУЛЬТЕТ ТРАНСПОРТНИХ ТА ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ

КАФЕДРА ІНФОРМАЦІЙНИХ СИСТЕМ І ТЕХНОЛОГІЙ

КУРСОВА РОБОТА

з дисципліни

"Крос-платформне програмування"

на тему

"Розроблення додатка – галірея з коментаріями"

Виконала:

студентка гр. КН-ІV-1 Крук Д.М.

Науковий керівник:

доц. Міронова В. Л.

Київ – 2013

Зміст

Вступ 3

Розділ І. Аналіз предметної області 4

Розділ ІІ. Теоретичні відомості 5

Знайомство з Juce 5

Візуальний редактор компонувань The Jucer 7

Розділ ІІІ. Створення додатку 14

Розробка інтерфейсу 14

Приклад реалізації роботи додатку 17

Висновок 22

Список використаних джерел 23

Додаток 1. Текст програми 24

Вступ

Дана курсова робота розроблена для дисципліни «Кросплатформне програмування». Що ж таке крос-платформне програмування? Кросплатформне програмне забезпечення – це ПЗ, працююче більш ніж на одній апаратній платформі і / або операційній системі. Типовим прикладом є програмне забезпечення, призначене для роботи в операційних системах Linux і Windows одночасно. [wikipedia.org]

Кросплатформенними можна назвати більшість сучасних високорівневих мов програмування. Наприклад, C, С++, Free Pascal – кросплатформені мови на рівні компіляції, тобто для цих мов є компілятори під різні платформи.

Не менш важливі для платформ стандартизовані виконавчі бібліотеки. Зокрема, стандартом стала бібліотека мови Сі. З великих кроссплатформенних бібліотек – Qt, GTK +, FLTK, STL, Boost, OpenGL, SDL, OpenAL, OpenCL та Juce. Саме про останню і піде мова далі.

Juce – це відкритий кросплатформний інструментарій розробки ПЗ (фреймворк) для мови C + +, що використовується для розробки GUI додатків і плагинов. Мета Juce - дозволити компілювати один і той же вихідний текст у програми, однаково працюючі на Windows, Mac OS X і Linux (останні версії - також iPhone) платформах. Він підтримує різні середовища розробки і компілятори, такі як GCC, Xcode і Visual Studio.

Курсовий проект розроблений в одному з додатків бібліотеки Juce – додаток Jucer, що використовується для візуального проектування і редагування графічних інтерфейсів. Jucer також може згенерувати C++ код, що реалізовує обрану структуру графічного інтерфейсу.

Розділ і. Аналіз предметної області

Використовуючи кросплатформну бібліотеку Juce мови С++ треба створити платформно незалежний додаток гри «Перший мільйон».

Перший мільйон — український аналог однієї з найпопулярніших телевізійних ігор у світі «Who Wants to Be a Millionaire?». Щоб виграти головний приз 1 мільйон гривень гравцеві необхідно правильно відповісти на 15 запитань зростальної складності та вартості. Кожне запитання має 4 варіанти відповіді, з яких лише один правильний. Складність запитань постійно збільшується. Час на роздуми над кожним питанням у гравця необмежений.

У даній курсовій буде розроблено більш простий варіант цієї гри, де буде 5 питань та виграш у 100 тисяч гривень. Для кожного питання також буде 4 варіанти відповіді і лише одна правильна. Якщо відповідь буде не вірною Ви одразу програєте.

В основному питання стосуються тематики комп’ютерних технологій. Для правильних відповідей треба буде згадати про різні мови в комп’ютерних технологіях та про основні технологічні визначення та поняття.

Для початку роботи потрібно сформувати декілька файлів таких як main.cpp, TApplication.срр, TMainForm.cpp та TThirdForm.cpp. А сам Jucer при роботі згенерує ще 2 файли – TCentralComponent.cpp та TThirdComponent.cpp.

Для створення такого додатку в програмі Jucer збуде задіяно різні віджети та відредаговано їх властивості. Основними компонентами є Text Button (кнопка з текстом), Label (ярлик), Text Editor (поле введення). В них можна налаштувати колір та розмір самого компонента та шрифту, положення та відображення на формі.

Розділ іі. Теоретичні відомості Знайомство з Juce

Бібліотека Juce (Jules Utility Class Extensions) – це відкритий кросплатформний інструментарій розробки ПЗ (фреймворк) для мови C + +, що використовується для розробки GUI додатків і плагінов. З першого погляду - це ще один тулкіт на С++ з розряду «все в одному». Однак дизайн бібліотеки, використовувані методики програмування і видатний зовнішній вигляд віджетів роблять Juce виключно оригінальним рішенням.

Juce працює в Windows, GNU / Linux, MacOS X та iOS, причому підхід до забезпечення платформ кардинально відрізняється від прийнятого в Qt або wxWidgets. Juce не використовує «рідні» віджети кожної конкретної платформи, а малює абсолютно всі елементи інтерфейсу самостійно, користуючись тільки системними функціями низького рівня (за замовчуванням самостійно малюються навіть рамки вікон, хоча можна перемикатися на стандартні системні обрамлення). Навіть шрифти в Juce відображаються за допомогою власного «движка». Це дозволяє досягти абсолютної попиксельної ідентичності інтерфейсу у всіх підтримуваних системах. Вся графіка і шрифти в Juce згладжуються за замовчуванням, практично всі елементи інтерфейсу малюються у векторному вигляді і можуть вільно масштабуватися, віджети підтримують прозорість, градієнти, тіні, анімацію і фонову графіку. Одним словом – віджети Juce виглядають дуже привабливо.

Спочатку Juce створювався для написання утиліт для роботи зі звуковими ефектами і активно використовується для цих цілей донині. У той же час він не є вузьким рішенням і підходить для створення практично будь-яких додатків. Juce має деякий «нахил» у бік Windows і MacOS Х – для Linux немає бінарних пакетів і недоступні деякі найбільш «просунуті» функції тулкіта, такі як створення плагінів для браузерів, проте всі базові можливості не залежать від платформи. Juce принципово не може емулювати зовнішній вигляд системних віджетів і не призначений для створення додатків, тісно інтегрованих в систему. Його головна «екологічна ніша» – створення оригінальних, вирізняються на загальному тлі програм, які практично не залежать від зовнішніх бібліотек.

У загальних рисах всю функціональність Juce можна розбити на кілька категорій (вони достатньо умовні і не виділені в окремі модулі):

Core – контейнери (несумісні з STL), рядки з підтримкою Unicode, доступ до файлової системи, потоки вводу-виводу, багатопотоковість і синхронізація, сигнали, таймери, перетворення типів, математика і випадкові числа і т.д.

GUI – великий набір віджетів, підтримка тем, OpenGL, підтримка веб-камери, drag-and-drop, стандартні діалоги і т. д.

The Jucer – візуальний дизайнер інтерфейсу. Включає також редактор фонової графіки, градієнтів і геометричних примітивів. The Jucer генерує готовий вихідний код для візуальних компонентів на С.

Графіка – підтримка форматів JPEG, PNG, GIF і частково SVG, прозорість, субпіксельне згладжування, впровадження графіки у вигляді бінарних ресурсів, багатий набір векторних примітивів і градієнтів, незалежна від системи робота зі шрифтами.

Звук – класи для прозорої роботи з різними звуковими серверами в усіх системах, підтримка форматів WAV, AIFF, FLAC і Ogg Vorbis, багатий набір звукових фільтрів, ефектів генераторів, конвертерів і плагінів. Повна підтримка Midi.

Мережа – стандартні потоки працюють з протоколами HTTP і FTP, низькорівневі сокети, абстрактна комунікація між процесами. Крім того, підтримуються різні алгоритми шифрування, мається вбудований Zip-декомпрессор і т.п.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]