Тема: Кросс-компиляция компонентов моделей виртуальных лабораторий программного комплекса BARSIC в модели Android
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
1. Система интернет-олимпиад по физике и модели виртуальных лабораторий BARSIC 7
1.1 Программный комплекс distolymp 7
1.2 Модели виртуальных лабораторий BARSIC и их взаимодействие с сервером 8
1.3 Пути переноса моделей виртуальных лабораторий BARSIC на платформу Android 9
2. Написание Android-моделей виртуальных лабораторий на языке Java 10
2.1 Структура проекта 10
2.2 Библиотека ABarsicLib 11
2.3 Парсер выражений 14
2.4 Модель виртуальной лаборатории «Тележка на наклонном рельсе» 15
2.5 Проигрыватель моделей виртуальных лабораторий ABarsicPlayer 17
3. Система кросс-компиляции моделей виртуальных лабораторий BARSIC на платформу Android 26
3.1 Структура кросс-компиляции 26
3.2 Библиотека ABarsicLib в системе кросс-компиляции 27
3.3 Схема запуска кросс-компилированных моделей 28
3.4 Оболочечные компоненты 29
4. Объединение проектов для платформы Android 33
4.1 Объединение проектов 33
4.2 Тестирование объединенного проекта 34
Выводы 35
Литература 36
Приложения 39
Листинг 3. Код измененных методов класса Button 39
Листинг 4. Код измененных методов класса TextEdit 40
Листинг 5. Код измененных методов класса Subwindow 43
📖 Введение
В рамках любой олимпиады школьникам следует предложить решить задачи и выполнить лабораторные работы. Задачи служат для проверки теоретических знаний. Экспериментальные умения и навыки проверяются в лабораторных работах. Умения и навыки по проведению физических экспериментов очень важны для будущего физика-исследователя.
Однако на практике, в абсолютном большинстве олимпиад по физике требуется решить только задачи, а экспериментальная часть в лучшем случае может присутствовать лишь на заключительном этапе. Такое положение дел связано с большой сложностью обеспечения участников экспериментальными установками, ведь для проведения массовых олимпиад практически нереально обеспечить для тысяч человек однотипное оборудование, необходимые площади, персонал, обслуживающий это оборудование (сборку, настройку, наблюдение за правильностью использования).
Вопрос о проведении экспериментальной части олимпиады полностью снимается, если использовать вместо настоящих установок их компьютерные модели. Виртуальные физические установки, в отличие от настоящих, не требуют значительных материальных затрат и не могут выйти из строя. Программное обеспечение виртуальных лабораторий разрабатывается так, чтобы поведение виртуальных установок не отличалось от поведения их реальных аналогов.
Дальнейшее развитие интернет-олимпиады школьников по физике зависит от возможности работы программного обеспечения олимпиады на различных программных платформах. На данный момент прохождение заданий олимпиады возможно только на настольных компьютерах под управлением операционной системы семейства Windows, либо под управлением Linux с помощью дополнительного ПО Wine и установки браузерного ядра Gecko. Задействование мобильных устройств поможет значительно расширить аудиторию олимпиады. Согласно статистике, представленной на сайте Рейтинг@Mail.ru [2, 3], по состоянию на 1 мая 2017 года более 53% пользователей выходят в интернет с мобильных устройств. Более 76% мобильных устройств работают под управлением операционной системы Android.
Встал вопрос о переносе интернет-олимпиады по физике на платформу Android.Ранее Монаховым В.В. и др. [4] рассматривалась возможность создания моделей виртуальных лабораторий на языке Java без использования среды BARSIC. Программы для операционной системы Android пишут на языке Java, однако нет совместимости двоичного кода виртуальной Java-машины и виртуальной машины Android. Оказалось, что размеры файлов моделей получались около 5 Мб и большая часть кода дублировалась. Другой подход состоял в вынесении всей повторяющейся части кода в приложение, однократно загружаемое с сервера и устанавливаемое на клиентское устройство. Модели виртуальных лабораторий содержали только специфическую для данного приложения часть кода. Для разработки кодов моделей использовалось два способа. Первый состоял в написании моделей непосредственно на Java. Второй, при помощи системы кросс-компиляции (разрабатываемой Максимовым М.А. [5]) из исходных кодов, написанных на языке BARSIC, в коды Java.
В связи с этим целью данной работы являлась разработка в программном комплексе Distolymp системы, позволяющей работать на устройствах Androidс кросс-компилированными моделями виртуальных лабораторий.
Для достижения поставленной цели решались следующие задачи:
• Разработка структуры проекта, позволяющего работать как с кросс-компилированными, так и разработанными непосредственно на Java моделями;
• Доработка «проигрывателя» моделей виртуальных лабораторий ABarsicPlayer;
• Доработка модели виртуальной лаборатории «Тележка на наклонном рельсе»;
• Усовершенствование библиотеки ABarsicLib;
• Объединение проектов проигрывателя моделей виртуальных лабораторий ABarsicPlayer, библиотеки ABarsicLib, моделей «Тележка на наклонном рельсе» и «Электрическая лаборатория» и парсера выражений (калькулятор);
• Тестирование объединенного проекта.
✅ Заключение
2. Доработан «проигрыватель» моделей виртуальных лабораторий ABarsicPlayer, а именно подгрузка параметров;
3. Доработана модель виртуальной лаборатории «Тележка на наклонном рельсе». Добавлен рельс, линейка со шкалой, функциональные кнопки, калькулятор, блокнот. Реализована установка загружаемых параметров;
4. Доработана библиотека ABarsicLib. Предложено разрабатывать классы моделей виртуальных лабораторий, наследуя их от абстрактного базового класса Model, содержащегося в библиотеке. Усовершенствованы разработанные С.Мартынюком классы Button, TextEdit, Subwindow. Добавлена библиотека JEvalParser;
5. Объединены проекты проигрывателя моделей виртуальных лабораторий ABarsicPlayer, библиотеки ABarsicLib, моделей «Тележка на наклонном рельсе» и «Электрическая лаборатория» и парсера выражений (калькулятор);
6. Проведено тестирование объединенного проекта.
Планируется дальнейшее усовершенствование библиотеки ABarsicLib, что позволит кросс-компилировать все модели виртуальных лабораторий и проводить олимпиаду на платформе Android.



