Программирование развивающих и обучающих игр для детей младшего школьного возраста

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    325,52 Кб
  • Опубликовано:
    2013-06-27
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Программирование развивающих и обучающих игр для детей младшего школьного возраста

МИНИСТЕРСТВО ОБОРАЗОВАНИЯ И НАУКИ РФ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра информатики и методики преподавания математики






«Программирование развивающих и обучающих игр для детей младшего школьного возраста»

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА


Выполнил:

Сыщук Роман Иванович





Воронеж 2013

Оглавление

Введение

Глава I. Методика использования развивающих и обучающих игр для детей младшего школьного возраста

1. Классификация развивающих игр

2. Компьютерные игры

3. Дидактические игры

4. Особенности развивающих игр

Глава II. Разработка развивающих и обучающих игр

1. Разработка приложения для платформы Android

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

3. Разработка приложения для браузерной версии. Реализация на языке JavaScript

Заключение

Литература

Введение


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

Игра - это одновременно развивающая деятельность, форма жизнедеятельности, зона социализации, защищенности, самореализации, сотрудничества, содружества с взрослыми, посредник между миром ребенка и миром взрослого. В игре вырабатываются такие жизненно важные качества, как внимательность, усидчивость, память, упорство, настойчивость в достижении цели. Кроме всего этого, игра развивает коммуникативные способности, логическое мышление, учит предвидеть последствия своих и чужих поступков. Учитель, с помощью игры, надеется организовать внимание детей, повысить активность, облегчить запоминание учебного материала[1].

Последнее время мы всё чаще пользуемся мобильными устройствами. Современный смартфон или планшет способен полностью заменить весь функционал домашних компьютеров. В связи, с чем актуальность приобретает разработка образовательных приложений не столько для персональных компьютеров, как для планшетов и смартфонов. Одной из наиболее перспективных операционных систем для мобильных устройств является Android. Следует учитывать, что на мобильных устройствах работают как специально написанные для них приложения, так и приложения, реализованные в web-форме.

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

Для достижения поставленной цели необходимо сформулировать и решить следующие задачи:

) раскрыть содержание понятия "развивающие игры" и возможности их использования в начальных классах;

) осуществить отбор игр образовательной направленности для реализации на мобильных устройствах;

) рассмотреть технологии разработки программ для операционной системы Android и с их помощью реализовать приложение для младших школьников;

) проанализировать возможности web-технологий и с их помощью реализовать игровую программу.

развивающий обучающий игра android

Глава I. Методика использования развивающих и обучающих игр для детей младшего школьного возраста


1.      Классификация развивающих игр


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

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

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

2.     
Компьютерные игры


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

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

Компьютерные игры - новый вид развивающего обучения.

В чем же польза от компьютерных игр и почему их нельзя заменить просто дидактическими или сюжетными играми?

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

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

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

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

.        Делать “видимым” проблемы в развитии ребенка, трудно обнаруживаемые в традиционном обучении. Показать, как трансформировать выявленные проблемы в специальные задачи обучения.

.        Формировать у ребенка процесс осмысливания собственных произносительных навыков.

.        Сложное программное обеспечение имеет чрезвычайно простое управление.

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

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

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

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

.        Ребенок учиться говорить правильно, стремиться исправить увиденную ошибку, ищет приемы самоконтроля, ориентируясь на привлекательную графику.

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

.        Дети меньше утомляются, дольше сохраняют работоспособность.

.        Глядя на экран монитора, ребенок сам видит результат своей работы.

.        У ребенка повышается мотивация в трудной для него работе над произношением. Он учится с самого начала оценивать свои достижения в речи, сопоставлять свое произношение с эталоном[2].

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

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

Примером компьютерных игр для развития у младших школьников могут быть:

Логозаврия: сайт детских компьютерных игр (#"656314.files/image001.gif">

Рис. 1. Оболочка Eclipse

После подготовки Eclipse мы можем приступить непосредственно к разработке нашего приложения. Но для начала рассмотрим саму оболочку и принцип работы нашего приложения на рисунке №1.

. Пакетный обозреватель. Включает в себя всю иерархию файлов используемых в проекте (классы, стили, картинки и т.д.).

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

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

. Рабочая область - в данной области отображаются необходимые для редактирования файлы проекта (разметка области, редактирование класса и т.д.).

. Свойства выбранного компонента. Отображает все свойства выбранного в данный момент времени компонента. Так же содержит применяемые события.

. Структура редактируемого файла. К примеру, если это активити - отображение слоя и всех компонентов входящих в него, или если это класс - иерархия всех методов и переменных, используемых в данном классе.

Теперь более подробно рассмотрим саму программу для тестирования.

Приложение состоит из трех активити (рабочих экранов). Активити включает в себя: файл разметки (в формате xml) и непосредственно класс, который будет его обрабатывать. Разметка осуществляется привычными html тегами, с небольшими поправками на среду разработки. К примеру, форма в рабочей области, которая на рисунке №2, имеет вид:

<RelativeLayout xmlns:android="#"656314.files/image002.gif">


На рисунке №2 отмечены:

. файл разметки

. класс

. кнопка из палитры, которая добавляется простым перетаскиванием, или описанием в файле разметки.

Компоненты на данной форме: button.

Механика работы: главное меню служит начальным экраном приложения. Здесь размещены две кнопки. Начать тестирование и выход. С кнопкой выход всё понятно. Кнопка тестирования вызывает новый активити:

public void myClick (View v) {

Intent intent = new Intent(this, Pifagor.class);(intent);

}

Здесь мы заранее прописали событие кнопки OnClick в её свойствах

Рис. 3. Форма тестирования

<Button:onClick="myClick"

…. />

Форма тестирования:

Здесь используются такие компоненты как: TetxtView, button, edittext.

Механика работы:

.        Генерируется сам вопрос (посчитай, вычисли и т.п.), на основании массива (String[] question = { "Сколько будет ", "Вычисли ", "Посчитай " };). Сюда же в строку добавляются и два случайных числа (first, second). Далее переменной questionView (которая определена как questionView = (TextView) findViewById(R.id.TextView02)); присваивается с помощью метода setText сформированная строка.

first = (int) Math.floor(Math.random() * 10 + 1);= (int) Math.floor(Math.random() * 10 + 1);.setText(""

+ question[(int) Math.floor(Math.random() * quetion.length)]

+ first + "x" + second + "?");

}

Таким образом, вопрос для ученика формирован.

.        Далее ученик вводит ответ, который он считает верным, в текстовое поле (answer = (EditText) findViewById(R.id.editText1);). Причем ответ не может быть пустым, или состоять из букв (обрабатывается программно) и подтверждает ответ нажатием кнопки.

.        Если ответ верный, мы выведем случайное сообщение из массива о правильности ввода данных, и увеличим счетчик правильных ответов на +1. В противном случае, появится информационное окно, в котором будет написано, сколько осталось попыток у ученика, и счетчик неверных ответов увеличиться на +1 (Toast.makeText(this,""+ answers[(int) Math.floor(Math.random()* answers.length)], Toast.LENGTH_SHORT).show();) После двух попыток, формируется новый вопрос. Функционал будет повторяться, пока не достигнет в совокупности 10 вопросов (не важно, верно ли ответил ученик или нет). Обработка осуществляется с помощью метода proverka.

public void proverka() {(questcount == 10) {.makeText(this,

"Твое тестирование завершено\nВнимание на результаты",

Toast.LENGTH_SHORT).show();intent = new Intent(this, ResultPifa.class);.putExtra("msg1", correct);.putExtra("msg2", uncorrect);

startActivity(intent);

}

}

.        После метода проверки, мы попадаем на финальный экран результатов (рисунок №4).

Рис. 4. Результаты

Используемые компоненты: textView.

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

correct = getIntent().getExtras().getInt("msg1");= getIntent().getExtras().getInt("msg2");

Осуществляется вывод о проведенном тесте:

·        Оценка (самая низкая оценка - 2)

·        Качество выполнения, вычисляется по формуле:

procent = correct-uncorrect;.setText(Integer.toString(procent) + "0%");

·        Комментарий к тестированию - является конструкцией типа case. В зависимости от полученной оценки, формируется комментарий.

if (ocenka < 2) {.setText("2!");

} else {.setText(Integer.toString(ocenka));

}.setText(Integer.toString(procent) + "0%");(ocenka) {2:= "НЕУД,

хуже результата и быть не может. Тебе нужно срочно учить таблицу умножения. Таких плохих результатов быть не должно!";;3:= "Далеко до идеала, необходимо больше практиковаться с вычислениями. Почаще проходи тестирование и у тебя всё получится!";;4:= "Довольно хороший результат! Ты почти идеально знаешь таблицу умножения, но всё же иногда допускаешь ошибки, немного усилий и у тебя всё получиться!";;5:= "Ты показал отличный результат! Но не стоит себя переоценивать, обязательно побольше практитуйся с вычислениями!";;

}.setText(comment);

}

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

2.      Разработка приложения для браузерной версии. Реализация на языке JavaScript


Для создания игры использовался JavaScript-прототипно-ориентированный сценарный язык программирования. JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам.

При построении приложения использовались такие технологии как: HTML, CSS, JQuery, и непосредственно программный код на языке JS, отвечающий за логику игры.

Этапы построения:

)        Верстка начальной страницы с помощью HTML.

)        Применение к объектам каскадной таблицы стилей. Сюда включены: начальное позиционирование, оформление.

)        Подключение кода JS к основной HTML странице, для обработки игровых событий.

)        Подключение библиотеки JQuery, для улучшения визуальных изменений на странице и упрощения работы в целом.

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

)        Необходимо сдвинуть все зеленые фишки в центр поля (пустоту), что бы фишка провалилась.

)        Если в пустое поле попадает синяя фишка - игра заканчивается

)        Фишки движутся в зависимости от нажатой кнопки указания движения.

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

Рис.5. Страница HTML

Основная разметка страница строится по HTML технологии (рисунок №5).

.        Здесь происходит подключение библиотек JQuery, файла CSS и внешнего файла JavaScript с алгоритмом работы игры.

.        Веб страница. По факту - то, что отображается в начале.

В начале игры формируется игровое поле. Считываются позиции голубых и зеленых фишек, а так же ограничивающих блоков. На основании их координат формируется матрица игрового поля:

var matrix = [[], [], [], [], []];

var elem = document.getElementsByClassName("fishkas");elemB = document.getElementsByClassName("blocks");count=0;(var i=0; i<elem.length; i++) {[div (elem.item(i).offsetTop,100)][div (elem.item(i).offsetLeft,100)] = elem.item(i).id;(elem.item(i).getAttribute("tag") == "green"){++;

}

}

Далее описывается функция обработчика, нажатия кнопки направления движения. В функцию передается значение, определяющую нажатую клавишу, условно: 1 - ВВЕРХ, 2 - ВНИЗ, 3 - ВЛЕВО, 4 - ВПРАВО.

Алгоритм движения: изначально все изменения производятся на матрице (визуального отображения нет). Позиции фишек в матрице изменяются до тех пор, пока не достигнут конца игрового поля, фишки, или ограничительного блока.

do {priznak = false;(var i=1; i<5; i++){(var j=0; j<5; j++){(matrix[i][j] == null || matrix[i][j] == undefined){

}{(i == 2 && j == 2){= matrix[i][j];;

}((matrix[i][j].indexOf("fishka")!= -1) && (matrix[i-1][j] == null || matrix[i-1][j] == undefined)){(i == 2 && j == 2){= matrix[i][j];;

}[i-1][j] = matrix[i][j];[i][j] = null;= true;

}

}

}

}

}(priznak);(who);

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

(var i=0; i<5; i++){

for (var j=0; j<5; j++){(matrix[i][j] == null || matrix[i][j] == undefined){

}{(matrix[i][j].indexOf("fishka")!= -1){

$(document.getElementById(matrix[i][j])).animate({top: i*100},1000);

}

}

}

}

После анимации необходимо выполнить проверку попадания фишек в центр (пустоту). Вызывается функция stopgame, которая фиксирует цвет фишки и их количество. Если например упала 1 зеленая фишка, то игра продолжается пока не упадут все зеленые, если упала синяя - игра завершается.

function stopgame() {

$(document.getElementById(finish)).animate({height:"hide", top:250, left:250},300);(document.getElementById(finish).getAttribute("tag") == "green"){-;(count == 0){

$("#ck").html("ОО, поздравляю!!!");

$("#ck").dialog('open');

}

}(document.getElementById(finish).getAttribute("tag") == "blue"){

$("#ck").html("Печаль, но ты проиграл<br>Попробуем снова?");

$("#ck").dialog('open');

}=null;

}

$("#ck").dialog({: function() {location.reload();}

});

Заключение


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

Литература


1.      Герасимов, С.В. Когда учение становится привлекательным/ С.В. Герасимов. - М., 2003.

.        Кикоин, Е.И. Младший школьник: возможности изучения и развития внимания/ Е.И. Кикоин. - М., 2003.

.        Компьютерные развивающие игры в помощь логопеду, дефектологу

.        Советы специалистов

.        Ребенок и компьютер

.        Общая информация по JS

.        Огромная база знаний по языку

.        База знаний по JS библиотеке

.        Уроки программирования Java для Android

.        Англоязычная база знаний Android// developer.android.com/guide

.        Голощапов, А.Л. Google Android. Программирование для мобильных устройств/А.Л. Голощапов - Санкт-петербург: БХВ-Петербург, 2012. - 448 с.

.        Гудман, Д.Д. JavaScript. Библия пользователя./Д.Д. Гудман - Москва: Вильямс, 2003. - 960 с.

.        Майер, Р. Программирование приложений для планшетных компьютеров и смартфонов./Р. Майер - Москва: Эксмо, 2011. - 672 с.

.        Прохоренок, Н.А. jQuery. Новый стиль программирования на JavaScript/Н.А. Прохоренок - Москва: Вильямс, 2010. - 672 с.

Похожие работы на - Программирование развивающих и обучающих игр для детей младшего школьного возраста

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!