Добавил:
Только когда поступишь в технический вуз поймешь на сколько ты гуманитарий Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Готовое_КР_Быки_и_коровы

.pdf
Скачиваний:
0
Добавлен:
07.06.2025
Размер:
644.29 Кб
Скачать

 

СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ.......................................................................................................................

6

1 Теоретический раздел ...................................................................................................

7

1.1

Анализ существующих аналогов..............................................................................

7

1.2

Постановка задачи......................................................................................................

8

2 Техническое задание.....................................................................................................

9

2.1

Введение......................................................................................................................

9

2.1.1 Наименование программы .....................................................................................

9

2.1.2 Краткая характеристика программы .....................................................................

9

2.2

Основание для разработки ........................................................................................

9

2.3

Назначение разработки............................................................................................

10

2.4

Требования, предъявляемые к программе .............................................................

10

2.4.1 Требования к функциональным характеристикам программы ........................

10

2.4.3 Требования к техническим средствам, используемым при работе программы

..........................................................................................................................................

 

10

2.4.4 Требования к языкам программы и среде разработки программы ..................

11

2.4.5 Требования к информационным структурам на входе и выходе программы 11

2.5

Требования к программной документации ...........................................................

11

2.6

Этапы разработки .....................................................................................................

11

3 Реализация....................................................................................................................

13

3.1

Игровой движок........................................................................................................

13

3.2

Интерфейс и игровая составляющая ......................................................................

17

3.2.1 Приветственный диалог .......................................................................................

17

3.2.2 Основной экран .....................................................................................................

18

3.2.3 Диалог об окончании игры...................................................................................

19

3.3

Тестирование приложения ......................................................................................

20

ЗАКЛЮЧЕНИЕ ..............................................................................................................

23

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ....................................................

24

ПРИЛОЖЕНИЯ..............................................................................................................

25

Приложение А ................................................................................................................

26

ВВЕДЕНИЕ

Современный мир цифровых технологий немыслим без мобильных устройств, которые стали неотъемлемой частью повседневной жизни, бизнеса и государственного управления. В этом контексте операционные системы для мобильных устройств играют ключевую роль, определяя не только функциональность приложений, но и уровень безопасности, производительности и интеграции с экосистемами. Одной из таких систем, занимающей особое место в российском IT-пространстве, является ОС «Аврора», разработанная компанией

«Открытая мобильная платформа» на базе Sailfish OS. Ее создание стало ответом на глобальные вызовы цифрового суверенитета, направленным на снижение зависимости от зарубежных технологий. «Аврора» наследует архитектурные принципы Sailfish OS, включая микроядро, модульность и гибридный подход к совместимости, но при этом адаптирована под специфические требования российского рынка: глубокую локализацию, интеграцию с государственными сервисами и повышенные стандарты информационной безопасности. Система ориентирована на корпоративный и государственный секторы, где критически важны защита данных, контроль над программным обеспечением и долгосрочная поддержка.

Особенность ОС «Аврора» заключается в ее многоуровневой безопасности.

На уровне файловой системы используется шифрование dm-crypt, а изоляция процессов обеспечивается механизмами SELinux и AppArmor, что минимизирует риски утечек данных. Для разработчиков это означает необходимость строгого соблюдения политик доступа приложений к системным ресурсам, таким как геолокация, камера или контакты. Кроме того, «Аврора» поддерживает Android-

приложения через слой совместимости Alien Dalvik, что позволяет использовать существующий контент, однако нативная разработка на C++ с фреймворком Qt

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

6

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

Игра «Быки и коровы», известная также как «Bulls and Cows», представляет собой классическую логическую головоломку, возникшую в середине XX века. Ее правила просты, но требуют аналитического мышления: игроку необходимо угадать загаданное программой число, получая подсказки в виде количества

«быков» (цифр, стоящих на своих местах) и «коров» (правильных цифр,

находящихся на неверных позициях). Например, если загадано число «1234», а

игрок ввел «1359», результат будет «1 бык» (цифра «1» на правильной позиции) и «1 корова» (цифра «3» присутствует, но на другой позиции). Механика игры основана на комбинаторике и теории вероятностей, что делает ее эффективным инструментом для развития навыков дедукции, логического мышления и математической интуиции.

Цифровая адаптация этой игры для мобильных устройств под ОС «Аврора» открывает новые возможности. Мобильный формат делает игру доступной широкой аудитории, включая школьников, студентов и взрослых, которые могут использовать ее для интеллектуального досуга. Разработка на C++ позволяет реализовать эффективные алгоритмы генерации чисел и оптимизировать логику подсчета «быков» и «коров», что важно для устройств с ограниченными ресурсами.

Таким образом, разработка мобильной версии «Быков и коров» для ОС

«Аврора» — это не просто техническая задача, а комплексный проект, сочетающий образовательные, технологические и социальные аспекты. Он отражает тенденции современной IT-индустрии: переход к локализованным решениям, акцент на безопасность и растущую роль мобильных приложений в повседневной жизни.

7

1 ТЕОРЕТИЧЕСКИЙ РАЗДЕЛ

1.1 Анализ существующих аналогов

На текущий момент в магазине RuStore для ОС «Аврора» отсутствуют нативные приложения игры «Быки и коровы», что связано с молодостью экосистемы и ориентацией платформы на корпоративный сегмент. Однако через контейнерную среду Alien Dalvik, обеспечивающую совместимость с Android-

приложениями, пользователи могут запустить несколько доступных вариантов.

Проанализируем их ключевые особенности.

Анализ доступных приложений "Быки и коровы" в RuStore показывает, что большинство из них представляют собой базовые реализации классической логической игры с минимальным функционалом, адаптированным для Android-

платформы. Эти решения ориентированы на стандартные правила: генерация 4-

значного числа с уникальными цифрами, подсчёт "быков" и "коров", а также простой интерфейс для ввода предположений. Рекламные интеграции присутствуют в большинстве бесплатных версий, что противоречит ожиданиям аудитории, ориентированной на профессиональное использование ОС. Еще одним слабым местом для мобильных устройств остаётся оптимизация кода — в

некоторых случаях наблюдаются задержки при обработке ввода на слабых устройствах.

Общие проблемы аналогов:

Зависимость от Android-контейнера, что снижает производительность и нарушает интеграцию с функциями «Авроры» (ввод/вывод, темы,

безопасность);

Наличие рекламы.

7

1.2 Постановка задачи

На основе проведенного анализа составим базовые требования для

приложения.

Механика игры:

Генерация 4-хзначных чисел с разными цифрами;

Алгоритм подсчета «быков» и «коров» с оптимизацией для снижения нагрузки на CPU;

Валидация ввода: проверка на уникальность цифр, запрет символов;

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

Интеграция с ОС «Аврора»:

Адаптация под системные темы (светлая/тёмная)

Реализация перечисленного функционала позволит превзойти Android-

аналоги за счет:

Нативной производительности (отсутствие накладных расходов контейнера);

Полной интеграции с безопасностью и интерфейсом «Авроры».

Создать основу для масштабирования:

Модульная архитектура на C++/Qt позволит легко добавить сетевой режим или ИИ-ассистента;

Поддержка многопользовательских сценариев через Sailfish OS SDK.

8

2 ТЕХНИЧЕСКОЕ ЗАДАНИЕ

2.1 Введение

Составленное техническое задание по дисциплине «Разработка приложений на С++» является документом к курсовой работе, который отражает все этапы разработки программного продукта, а также процесс проектирования и выявление требований, предъявляемых конечному продукту.

2.1.1 Наименование программы

Название данного приложения «Быки и коровы» будет напрямую связываться с темой курсовой работы: «Разработка мобильного приложения «Быки и коровы».

Данное название отражает предназначение будущего приложения. Английский вариант названия: “Bulls and Cows”.

2.1.2 Краткая характеристика программы

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

пиктограммы или слова. После каждой попытки задумавший игрок выставляет

«оценку», указывая количество угаданного без совпадения с их позициями

(количество «коров») и полных совпадений (количество «быков»).

2.2 Основание для разработки

Основанием для разработки является курсовая работа по дисциплине

«Разработка приложений на C++», предусмотренная учебным планом направления

9

подготовки 09.03.01 «Информатика и вычислительная техника» профиля

«Цифровые комплексы, системы и сети».

2.3 Назначение разработки

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

2.4 Требования, предъявляемые к программе

2.4.1 Требования к функциональным характеристикам программы

В приложении должны быть реализованы следующие операции:

генерация 4-хзначного случайного числа с разными цифрами;

пользовательский ввод числа;

вывод информации о наличии «коров» и «быков» в введенном пользователем значении;

вывод сообщения о завершении игры в случае успешного отгадывания сгенерированного числа.

2.4.3 Требования к техническим средствам, используемым при работе

программы

На мобильном устройстве должна поддерживаться операционная система

«Аврора».

10

2.4.4 Требования к языкам программы и среде разработки программы

Для разработки используется язык программирования C++, язык разметки

QML, язык скриптов Javascript, в качестве среды разработки выступает АврораIDE.

2.4.5 Требования к информационным структурам на входе и выходе

программы

В качестве входных данных в приложении реализован ввод 4-хзначных чисел,

цифры которых отличаются друг от друга, и сигнал готовности ввода.

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

2.5 Требования к программной документации

1.Пояснительная записка оформляется в соответствии с ЛНА РТУ МИРЭА.

2.Проектная документация, составленная в соответствии с ГОСТ.

В процессе создания приложения вся проделанная работа документируется,

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

2.6 Этапы разработки

1.Обзор способов организации данных и обоснование выбора необходимых инструментов ЯП для эффективного выполнения операций: 01.04.2025 – 22.04.2025;

2.Разработка программы: 22.04.2025 – 30.04.2025;

3.Разработка программной документации: 01.05.2025 – 10.05.2025;

11

4.Оформление пояснительной записки: 11.05.2025 – 16.05.2025;

5.Защита курсовой работы: 23.05.2025 – 30.05.2025.

12