Файл: Министерство науки.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 03.12.2023

Просмотров: 151

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
создано множество инструментов для разработчиков, таких как средства удаленного дебага, аналитики производительности и так далее.

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

          1. Kotlin

Kotlin это мультипарадигмальный язык со статической типизацией, разработанный как альтернатива Java. Как и Java, он компилируется в байт-код, который запускается на JavaVirtualMachine(JVM), но Kotlinпредставляет более кратный синтаксис и языковые функции, такие как функциональные шаблоны вывода типов.

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

  • в Kotlinнет необходимости указывать тип явно, он может быть выведен компилятором автоматически, а использование JVM обеспечивает безопасную работу с памятью, предотвращает переполнение буфера, например, связанное с некорректным использованием динамически выделяемой памяти;

  • одной из самых частых ошибок есть null pointer exception, в Kotlin для предотвращения ее возникновения все типы not null (ссылки не могут хранить null), также свойства должны быть проинициализированы, обнуляемые типы нельзя использовать явно, нужно использовать безопасный вызов функции;

  • в Kotlinобъединена проверка на возможность приведения и само приведение в один оператор is, это касается не только безопасности, но и лаконичности этого языка программирования;

  • расширить функционал класса можно не наследуясь от них, это особенно полезно при длительной разработке и поддержке продукта разными командами разработчиков;

  • в Kotlinимеются также классы для сохранения данных, которые созданы для уменьшения количества кода;

  • также Kotlinподдерживает функционально-ориентированное программирование, когда вместо объектов, где состояние и поведение объединены, все разделено на сами данные и на функции обработчики этих данных, которые принимают их и отдают результат (ламбда-выражения, функции высшего порядка и так далее).


          1. Dart(Flutter)

Flutter это достаточно молодой SDKот Google, то есть набор средств для разработки, который предназначен для создания кроссплатформенных приложений под Androidи iOS, а также webи desktopприложений. Используется язык программирования Dart, который компилируется в бинарный код, что

повышает производительность приложений. Сам Flutter написан на языках C, C++ и Dart.

Flutter состоит из двух вещей: SDK (набор инструментов для разработки, дебага, профилирования и так далее) и самого фреймворка (библиотеки пользовательского интерфейса). Приложения, созданные с помощью Flutter:

  • построены из одной кодовой базы, скомпилированные непосредственно в нативный код, что увеличивает производительность этих приложений;

  • используют графический процессор GPUдля рендеринга и могут получать доступ APIи службам платформы (камера, локальное хранилище и так далее).

Некоторые особенности Flutter:

  • возможность очень быстро разработать прототип или даже готовое приложение, наличие такой особенности как hot reload (изменяя какой-либо элемент в проекте, и он моментально изменяется в приложении, при этом не меняя состояние этого приложения);

  • Flutterпоставляется с богатым набором настраиваемых виджетов, основанных на фреймворке Materialили Cupertino;

  • Flutterинтегрируется с популярными инструментами разработки, такими как Visual Studio Code, Android Studio и XCode.



        1. 1   2   3   4   5   6   7   8   9   10   ...   14

Обзор существующих игр-аналогов



Для формирования требований к разрабатываемой игре необходимо провести обзор игр-аналогов. Для данного обзора было выбраны следующие игры:

  1. «Метод Гоши» (Рисунок 3, 4).

Суть игры: есть 2 категории и множество иконок, которые появляются по очереди, их нужно соотнести по нужным категориям. Игра требует быстрого ответа от игрока, не давая времени подумать над ответом.

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

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



Рисунок 3 Интерфейс игры «Метод Гоши»




Рисунок 4 Процесс игры «Метод Гоши»


  1. «Что гуглят больше?» (Рисунок 5).

Суть игры: угадать какой из запросов Googleболее популярный. Например, «Интересные книги» или «Комедии». После чего игроку показывают количество запросов в месяц, и правильность его ответа.

Очень современная и интересная идея. Выглядит приложение красиво, вопросов по оформлению нет, но с интерфейсом есть проблемы. Не хватает меню, настроек, правил. Также в
начале непонятно как выбрать правильный ответ.



а) б)

Рисунок 5 – Интерфейс игры «Что гуглят больше?»: а) главное меню; б) процесс игры


  1. «Вспомни 90-е» (Рисунок 6).

Суть игры: угадывать предметы, фильмы, мультики из 90-ых годов. Игроку дается изображение, он должен из букв составить слово. Например, «Тетрис»,

«Sega» и так далее.

Реализация отличная, много вопросов, оформление на высоте, однако есть один, но очень важный минус – однообразие. Поначалу игра очень затягивает, возвращаешься в прошлое, вспоминаешь, угадываешь, потом становиться менее интересно, и уже через 15-20 минут игры хочется поиграть во что-нибудь другое.




а) б)

Рисунок 6 – Интерфейс игры «Вспомни 90-е» а) главное меню; б) процесс игры

  1. «NickIt.Cost» (Рисунок 7).

Суть игры: игроку дается множество вопросов на тему денег, разбитые на категории: «Зарплаты», «Цены», «Штрафы», «Самое дорогое» и другие. Игрок отвечает на них, после чего ему показывают короткий факт на эту тему.

Есть много стоящих фактов, сам процесс сделан интересно, красиво, не надоедает. Интерфейс удобный, вопросов много, нет регистрации и навязчивой рекламы. Есть недоработки, например, опечатки в вопросах.





а) б)

Рисунок 7 – Интерфейс игры «Nick It. Cost» а) главное меню; б) процесс игры


  1. «TrickyTest2:GeniusBrain?» (Рисунок 8).

Суть игры: игроку дается множество хитрых головоломок и абсурдных решений. Цель этой игры – не быть обманутым.

Игра сделана профессионалами. Графика лучшая, среди подобных тематик. Удобная, с красивой анимацией. Захватывает с первых минут. К сожалению, данная игра не поддерживает русский язык.



а) б)

Рисунок 8 – Интерфейс игры «Tricky Test 2: Genius Brain?» а) главное меню; б) процесс игры
В таблице 1 представлено сравнение функциональных возможностей данных игр.

Таблица 1 Сравнение функциональных возможностей данных игр-аналогов


Функциональные возможности

TrickyTest2:Genius

Brain?

NickIt. Cost

Вспомни 90-е

Что гуглят больше?

Метод Гоши

Возможность использования приложения без подключения к сети

Интернет

+

-

+

+

+

Поддерживаемый язык

Английский

Русский

Русский

Русский

Русский,

английский

Требуемая версия

Android

4.1 и выше

4.4 и выше

4.0 и выше

4.1 и выше

4.0 и выше

Реклама в приложении

+

+

+

+

+

Выбор уровня

сложности

-

+

+

-

-

Платный контент

+

+

-

-

+

Просмотр достижений

-

+

+

-

+

Правила игры

+

+

-

-

+