Научная статья на тему 'РАЗРАБОТКА ПРИЛОЖЕНИЕ MEMORY GAME'

РАЗРАБОТКА ПРИЛОЖЕНИЕ MEMORY GAME Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
156
13
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ANDROID / MEMORY GAME / C# / КАРТОЧКИ / ЗАПОМИНАНИЕ / ДЕТСКАЯ / FLASHCARDS / MEMORIZATION / CHILDREN

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Поварницын Е.Н.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DEVELOPMENT OF THE MEMORY GAME APP

The article is devoted to the development of the game developing memory. It covers all stages of development in detail. And there is also an analysis of the application.

Текст научной работы на тему «РАЗРАБОТКА ПРИЛОЖЕНИЕ MEMORY GAME»

УДК 004.6

Поварницын Е.Н. студент 4 курса

факультет «Информационные системы и технологии» Северный Арктический Федеральный Университет

Россия, г. Архангельск

РАЗРАБОТКА ПРИЛОЖЕНИЕ MEMORY GAME

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

Ключевые слова: Android, Memory Game, C#, карточки, запоминание, детская.

Povarnitsyn E. N. student 4rd year

faculty of Information systems and technologies» Northern Arctic Federal University Russia, Arkhangelsk

DEVELOPMENT OF THE MEMORY GAME APP

Annotation: The article is devoted to the development of the game developing memory. It covers all stages of development in detail. And there is also an analysis of the application.

Keyword: Android, Memory Game, C#, flashcards, memorization, children.

1 АНАЛИЗ ПРИЛОЖЕНИЯ

Идея написать приложения под платформу Android с помощью Android Studio. Цель приложения - это развитие памяти у пользователей приложения.

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

Язык программирования выбран Java. По следующим причинам:

- объектно-ориентированное программирование;

- язык высокого уровня с простым синтаксисом и плавной кривой обучения;

- стандарт для корпоративных вычислительных систем;

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

- независимость от платформы («Написать один раз и использовать везде»);

- язык для распределенного программирования и комфортной удаленной совместной работы;

- и так далее.

Разработка ведётся в Android Studio по причине того, что это самая популярная и развивающаяся платформа. Данная среда уже годами рекомендует себя.

В приложении необходимо добавить авторизацию пользователя, куда он сможет вести своё имя и сколько ему лет. Чтобы приложение стало хоть немного востребовано нужно было выбрать популярную тематику карточек. Поэтому тематика картинок была взята с баскетбольных команд, а вернее с американской лиги NBA. Данная тематика будет интересна поклонникам данной лиги, а их не мало.

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

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

Time Name Age

Рисунок 1 - Макет приложения

2 СРАВНИТЕЛЬНЫЙ анализ

Разберём другие приложения с данной тематикой.

Тренировка памяти | Мемори: Remembery. Обычная игра, в которой существуют различные тематики картинок. Но в основном данная игра рассчитана на слишком детскую аудиторию, так как изображения на картинках слишком детские. В игре так же присутствуют уровни сложности и возможен выбор большой локализации. Приложение выглядит в соответствии с рисунком 2.

Рисунок 2 - Приложение Мемори: Remembery

Игра памяти: Memory Match. Данное приложение уже берёт аудиторию повзрослее, так как там расположены карточки браузеров, соцсетей и так далее. В игре так же существует выбор уровня 3x2, 4x3, 5x4 и так далее до 9x8. Приложение выглядит в соответствии с рисунком 3.

Рисунок 3 - Memory Match

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

Рисунок 4 - Memo

Игры с памятью. Аудитория данного приложения будут дети дошкольного возраста. Тематика данной игры — это мультяшные животные. В данном приложении есть 4 различных уровня сложности, это лёгкий, средний, тяжелый и сверх. Приложение выглядит с соответствием с рисунком 5.

Рисунок 5 - Игры с памятью

Игра Памяти: Животные. Игра рассчитана на уже более взрослую аудиторию нежили для дошкольников. В игре так же существуют различные уровни сложности. Так же присутствует мультиплеер. Тематика игры такая же, как и у прошлого приложения, животные. Но здесь они уже настоящие, а не мультяшные. Приложение выглядит с соответствием с рисунком 6.

Рисунок 6 - Игра Памяти: Животные Далее рассмотрим итоговую таблицу сравнения, таблица 1

Таблица 1 - Сравнение приложений

Мобильное приложение Основной функционал Отличительные особенности Тематика игры Аудитория игры

Remembery Запоминание карточек Различная детская тематика Разная Дети дошкольного возраста

Memory Match Запоминание карточек Настраиваемое поле картинок Разная Дети

Мобильное Основной Отличительные Тематика Аудитория

приложение функционал особенности игры игры

Memo Запоминание Увеличение Разные Дети

букв, цифр и сложности детские дошкольного

других темы возраста

предметов

Игры с Запоминание Мультипликационные Животные Дети

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

Игра Памяти: Запоминание Мультиплеер Животные Дети

Животные карточек и игра с друзьями

3 РАЗРАБОТКА ПРИЛОЖЕНИЯ

3.1 Описание приложения с точки зрения пользователя

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

После это стоит заняться прописыванием фоновых элементов. В данном приложении будет всего три окна с авторизацией, выбором уровня сложности и самой игрой. Для авторизации нам понадобятся такие элементы, как кнопки, поле редактора текста и текстовые поля. После прописывания и расстановки их в хт1 файле окно будет выглядеть в соответствии с рисунком 7.

Рисунок 7 - Шаблон авторизации

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

Рисунок 8 - Шаблон выбора уровня

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

Рисунок 9 - Шаблон игры

Далее разберём классы, которые были использованы для логики игры. Первом делом был создан класс для авторизации пользователя в системе. В нём прописывается логин и возраст, а также валидация этих данных. Выглядит метод создания аккаунта в соответствии с рисунком 10.

(¡¡¡Override

protected void onCreate(Bundle savedlnstanceState) { super.onCreate(savedlnstanceState); this . requestUindowFeature (Window. FEATURE_NO_ TITLE); setContentView(R.layout,activity_weLcome_to)j init()j

loginButton.setOnClickl_istener((v) -* {

name = nairieEdi" . get Text () , toSt ™ing() , trimQ j age = ageEdi" . getTextQ . toSt^ingQ ,t™iin() j validNaine = isValidNairie(naine); validAge = isValidAge(age); isOk = checkNaineAndAge()j iff: == false) { "■g t u rn"

}else{

Intent i = new Intent(getBaseContext(),MenuActivity.class)j i. putExtra (USERJJAMEname); i.putExtra(USER_AGE,age)j startActivity(i);

>

>

Рисунок 10 - Код создания аккаунта

После чего создаём логику для окна с меню, где можно выбирать уровень сложности. Стоит обратить внимание, что на данном этапе будет происходить переадресация на игру, класс которой ещё не создан, поэтому при вводе кода могут возникать ошибки. Код для привязки кнопки с уровнем сложности средний будет выглядеть в соответствии с рисунком 11.

button4x4,setOnClickl_istener((v) -» {

Intent intent = new Intent( packacjeContext: MenuActivity .thisjGameActivity. class);

intent. put Extra (USER_NAMEj u se rNaine) j

intent.put Extra(USER_AGEjU5erAge) j

intent.putExtra(LEVELj value 4)j

intent.putExtra(FOR_TIMERjMEDIUM)j

startActivity(intent)j

Рисунок 11 - Код привязки кнопки

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

Так же в игру был добавлен таймер, по истечению которого игра заканчивается автоматически. Старт таймера выглядит в соответствии с рисунком 12.

ubLi- Timerflong nuinOfSeconds, long interval, EditText text,GameActivity theActivity){ super (nuinOf Seconds, interval) j this .tiinerText = text; this.theActivity = theActivity;

}

public void onTick(long iriillisUntil-inished){

-Lae-Te>:~ .setText ("Tinier: " + millisUntilFinished;

Рисунок 12 - Код таймера

3.2 Описание приложения с точки зрения пользователя

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

Рисунок 13 - Заполнение данных пользователя

После чего будет предложен выбор уровня в соответствии с рисунком

Рисунок 14 - Выбор уровня сложности

После чего откроется игра, в соответствии с рисунком 15.

Рисунок 15 - Игра Memory Game

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

Рисунок 16 - Выигрыш игрока

i Надоели баннеры? Вы всегда можете отключить рекламу.