Создание обучающего приложения по информатике на базе Unity | Статья в сборнике международной научной конференции

Автор:

Рубрика: 12. Технические средства обучения

Опубликовано в

IX международная научная конференция «Актуальные задачи педагогики» (Москва, июнь 2018)

Дата публикации: 09.06.2018

Статья просмотрена: 15 раз

Библиографическое описание:

Фролов В. Н. Создание обучающего приложения по информатике на базе Unity [Текст] // Актуальные задачи педагогики: материалы IX Междунар. науч. конф. (г. Москва, июнь 2018 г.). — М.: Буки-Веди, 2018. — С. 88-93. — URL https://moluch.ru/conf/ped/archive/279/14355/ (дата обращения: 21.11.2018).



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

Ключевые слова: Unity, Базы данных, модуль, C#, тесты, лекции/

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

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

Итак, Unity — это трехмерный игровой движок, разработанный компанией Unity Technologies [4]. Данная программа написана на языке и активно поддерживается разработчиками. Они постоянно выпускают обновления, как документации, так и функционала. Unity имеет свой API, написанный разработчиками, а также огромное количество классов, методов, функций и т. д. Все это значительно облегчают процесс разработки. Создавая логику приложения, разработчик непременно пользуется данным API. Поведение игровых объектов контролируется с помощью компонентов (Components), которые присоединяются к ним. Несмотря на то, что встроенные компоненты Unity разнообразны, разработчик обнаружит, что ему нужно выйти за пределы их возможностей, чтобы реализовать собственные идеи. Unity позволяет создавать собственные компоненты, используя скрипты. Они позволяют активировать игровые события, изменять параметры компонентов, и отвечать на ввод пользователя каким угодно способом.

Unity изначально поддерживает несколько языков программирования: C#; UnityScript язык, разработанный специально для использования в Unity по образцу JavaScript; в дополнение к этим, с Unity могут быть использованы и многие другие языки программирования семейства.NET, если они могут компилировать совместимые DLL. В комплекте с Unity поставляется MonoDevelop. Это свободная среда разработки, предназначенная для создания приложения на C#. С помощью данной IDE можно с комфортом писать скрипты. Также можно использовать и Visual Studio, выбор всегда остается за разработчиком проекта [1].

Система пользовательских интерфейсов позволит разработчику создать пользовательские интерфейсы быстро и интуитивно. Это новая система, разработанная для Unity. Данная система имеет ряд двухмерных объектов чем-то напоминающих элементы Windows Form, но адаптированных под игровой движок. В наличии есть Toggle (check button), Button, Slider, Scroll Bar, Drop Down, Input Field (Text box), Text (Label), Image, Scroll View. Эти элементы могут быть как двухмерными, так и трехмерными, что значительно расширяет область их применения, также они позволяют сделать интерфейс, благодаря которому пользователь сможет просто взаимодействовать с приложением. Можно выводить списки групп, текст, вводить текст необходимый для работы, выбирать какие-нибудь параметры и многое другое [2].

Система графического интерфейса UI кардинально отличается от старой версии GUI и имеет новые возможности. Так же существует сторонняя система, позволяющая создавать графический интерфейс, называемая NGUI. NGUI и UI очень похожи в некоторых моментах, что облегчает переход с одной системы на другую при необходимости.

Таким образом, для разработки обучающего приложения, нами был выбран выше обозначенный программный продукт Unity, который имеет удобный интерфейс, большое «комъюнити» (англ. community — сообщество) и детальную документацию по всему функционалу программы. В ходе разработки проекта будущего приложения была создана структурная модель, представленная на рисунке 1:

Рис. 1. Структурная модель приложения

Данная модель позволяет наглядно представить структуру конечного приложения и позволяет разделить сам процесс разработки на несколько этапов с выделением необходимых задач. Итак, создание проекта, требует решения двух задач, а именно приложение должно состоять из двух частей: клиентское и серверное приложение.

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

Для работоспособности серверного приложения в качестве хостинг-провайдера мы выбрали «Beget.com». Он является одним из крупнейших хостинг-провайдеров России, зарекомендовал себя высоким уровнем обслуживания, профессиональной технической поддержкой, надежностью, скоростью, безопасностью, качеством услуг и развитием собственных программных продуктов. [3]

Итак, нами был разработан обучающий софт — программное приложение, которое состоит из двух основных программных модулей:

Первый — это клиентское приложение, или модуль студента, представленный на рисунке 2. Он предназначен непосредственно для студентов, и содержит в себе разделы: лекции, калькулятор и тесты.

Рис. 2. Модуль студента

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

В качестве теории в приложении представлено несколько подразделов с теоретическими материалами и практическими заданиями, рисунок 3. Перечень тем со времен может легко добавляться преподавателем. Текст открывается на весь экран, шрифт оптимально подходит для чтения, в правой стороне есть ползунок, позволяющий прокручивать страницу. В конце каждого раздела есть кнопка «назад», которая вернет пользователя в предыдущее меню.

Рис. 3. раздел «Теория»

В двух последних разделах, он проверяет и закрепляет свои знания с помощью тестов. Здесь присутствует два режима тестирования:

  1. «Тест», является обучающим режимом, и количество попыток прохождения тестирования ничем не ограничено. Что в свою очередь помогает лучше закрепить пройденный материал и провести необходимую работу над ошибками. Работа в данном режиме представлена на рисунке 4:

Рис. 4. Режим тестирования

Последовательность вопросов генерируется программой автоматически в случайном порядке. По завершении теста, выходит окно с результатами, отображаемыми в трех шкалах: традиционная пятибалльная отметка, набранные баллы и перевод оценки по шкале ECTS.

  1. «Онлайн-тест». Этот режим является режимом контроля, для начала которого студенту необходимо пройти авторизацию, рисунок 5, предварительно получив ключи доступа у администратора системы, или зарегистрироваться самостоятельно в серверном приложении. Результаты теста будут записаны в базу данных. Просмотр результатов будет доступен администратору системы и преподавателю по определенной дисциплине.

Рис. 5. Авторизация

Для начала тестирования необходимо пройти авторизацию, после этого запускается режим тестирования аналогичный предыдущему режиму «Тест». По завершению тестирования программа автоматически отправит результат (оценку и время прохождения), логин и уникальный номер студента в базу данных.

Второй программный модуль, серверное приложение, предназначен для администратора системы и изображен на рисунке 6:

Рис. 6. Модуль администратора

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

Рис. 7. Главное окно

Серверная часть программы имеет удобный интерфейс, который поспособствует более быстрой и эффективной работе с программой. Далее мы представим, как в системе выглядит окно регистрации пользователей, студентов и преподавателей, рисунок 8:

Рис. 8. Регистрации пользователей системы

Также мы можем отредактировать любую информацию о конкретном пользователе, имеется функция поиска по достаточно большому кол-ву параметров, или данных, которые указываются при регистрации, рисунок 9:

Рис. 9. Редактирование информации

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

Рис. 10. Создание теста

Далее рассмотрим окно редактирования теста, рисунок 11. В данном окне есть строчка для ввода текста, и четыре строчки для ввода вопросов, один из которых должен быть правильным ответом. Правильный ответ строго должен находиться в строке «Правильный ответ». При первом создании новой строчки он обозначен как «true answer». После редактирования вопросов следует нажать на кнопку «сохранить изменения». При прохождении тестирования, в клиентском приложении, вопросы будут выдаваться в случайном порядке. После завершения всех необходимых работ, можно нажать на кнопку «выйти из режима редактирования» и программа выйдет из него.

Рис. 11. Редактор тестов

Для того, чтобы в последующем посмотреть результаты, в главном окне программы есть функция «смотреть результаты тестов». Окно просмотра, рисунок 12, позволяет найти соответствующий результат по логину студента, или его уникальному номеру (УИН). Также можно выбрать из списка определенный тест, или произвести поиск по всем тестам. В форме можно удалить какой-либо результат или сохранить его в формате «*.doc», нажав на кнопку «сохранить результат в текстовый файл».

Рис. 12. Окно результатов

В ходе данного исследования были изучены способы работы с базами данных и хостингом, освоены некоторые особенности Unity, языка C# и СУБД MySQL. Итогом нашей работы, стало создание полнофункционального программного приложения, имеющего режим обучения, функции тестирования и возможность работы с входящей информацией. Разработанное приложение является очень удобным и функциональным средством обеспечения образовательного процесса, его планируется использовать на факультете СПО в КНИТУ.

Литература:

  1. C# // Microsoft. URL: https://docs.microsoft.com/ru-ru/dotnet/csharp/csharp (дата обращения: 20.06.2017);
  2. Краткий обзор нового Unity UI с примерами организации интерфейса // Хабрахабр. URL: https://habrahabr.ru/post/246605/ (дата обращения: 20.06.2017);
  3. О компании // Beget. URL: https://beget.com/ru/about (дата обращения: 20.06.2017);
  4. Официальный сайт // Unity. URL: https://unity3d.com/ru (дата обращения: 20.06.2017)
Основные термины (генерируются автоматически): серверное приложение, API, NGUI, баз данных, рисунок, обучающее приложение, режим тестирования, администратор системы, клиентское приложение, графический интерфейс.

Ключевые слова

модуль, тесты, базы данных, лекции, C#, Unity

Похожие статьи

Тестирование графического интерфейса (GUI testing)

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

Разработка клиент серверного приложения “TEST-DRIVE”

Тестовый драйвер создан как клиент-серверное приложение.

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

Внедрение системы мониторинга метрик в серверное...

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

Программная реализация интерактивной компьютерной...

Пользователи напрямую взаимодействуют с клиентским приложением, подключенным к серверу приложений, а сервер приложений подключен к системе управления базами данных (СУБД). На первом уровне размещается клиентское приложение...

Применение современных технологий обучения для дисциплины...

умения: разрабатывать, внедрять и тестировать клиент-серверное приложение

Проанализируйте модель базы данных и интерфейс информационной системы, в соответствии с информационными потоками.

Проектирование мобильных приложений и облачных сервисов

облачные сервисы и мобильные приложения — это возможность наращивать клиентскую базу, повышая качество индивидуального обслуживания и

Основные термины (генерируются автоматически): NPM, JIT, приложение, API, PHP, WEB, исходный код, мобильное приложение.

Обнаружения вредоносных программ-ботнетов на основе облака...

Основные термины (генерируются автоматически): приложение, данные, Сетевой трафик, APK, сбор данных, программа, баз данных, вредоносная программа

Если приложение работает в режиме клиент/сервер, а аутентификационные данные. Сетевая разведка.

Современные подходы к разработке мобильных приложений для...

База данных: база данных хранения, используемая планировщиком и api.

Внедрение системы мониторинга метрик в серверное приложение...

PostgreSQL- свободная объектно-реляционная система управления базами данных (СУБД).

Подходы к архитектурному проектированию веб-приложений

На рисунке 1 приведён пример структуры простого веб-приложения, состоящего из сервера, базы данных, а также межсетевого экрана, обычно за защиту отвечает хостинг, но если создавать нечто своё, то и защищаться придётся самому.

Обсуждение

Социальные комментарии Cackle

Похожие статьи

Тестирование графического интерфейса (GUI testing)

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

Разработка клиент серверного приложения “TEST-DRIVE”

Тестовый драйвер создан как клиент-серверное приложение.

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

Внедрение системы мониторинга метрик в серверное...

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

Программная реализация интерактивной компьютерной...

Пользователи напрямую взаимодействуют с клиентским приложением, подключенным к серверу приложений, а сервер приложений подключен к системе управления базами данных (СУБД). На первом уровне размещается клиентское приложение...

Применение современных технологий обучения для дисциплины...

умения: разрабатывать, внедрять и тестировать клиент-серверное приложение

Проанализируйте модель базы данных и интерфейс информационной системы, в соответствии с информационными потоками.

Проектирование мобильных приложений и облачных сервисов

облачные сервисы и мобильные приложения — это возможность наращивать клиентскую базу, повышая качество индивидуального обслуживания и

Основные термины (генерируются автоматически): NPM, JIT, приложение, API, PHP, WEB, исходный код, мобильное приложение.

Обнаружения вредоносных программ-ботнетов на основе облака...

Основные термины (генерируются автоматически): приложение, данные, Сетевой трафик, APK, сбор данных, программа, баз данных, вредоносная программа

Если приложение работает в режиме клиент/сервер, а аутентификационные данные. Сетевая разведка.

Современные подходы к разработке мобильных приложений для...

База данных: база данных хранения, используемая планировщиком и api.

Внедрение системы мониторинга метрик в серверное приложение...

PostgreSQL- свободная объектно-реляционная система управления базами данных (СУБД).

Подходы к архитектурному проектированию веб-приложений

На рисунке 1 приведён пример структуры простого веб-приложения, состоящего из сервера, базы данных, а также межсетевого экрана, обычно за защиту отвечает хостинг, но если создавать нечто своё, то и защищаться придётся самому.

Задать вопрос