Информатизация методики обучения, для иностранного языка на платформе Python
Секция: Технические науки
XXIV Студенческая международная научно-практическая конференция «Технические и математические науки. Студенческий научный форум»
Информатизация методики обучения, для иностранного языка на платформе Python
Сейчас, в век информационных технологий, знание иностранного языка - необходимость. Время идет, потребности общества меняются. Сегодня более актуальными считаются профессии в сфере ай-ти, рекламы и тому подобное. Именно для этих профессий важно знать языки. К тому же, пользоваться компьютером и не иметь базовых знаний английского практически невозможно. Поэтому знание языков является необходимостью.
Цель нашей научной работы- это создать удобную программу, для ученика, которая поможет изучить иностранный язык, и дополнительно развить направления памяти такие как зрительная и ассоциативная.
Главное отличие игрового вида изучения и обычного изучения в том, что игровой вид изучения завораживает и развивает интерес к изучению.
В мире, где главную роль играет информация и социальные сети, получать новые знания можно через разные программы. Большинство методик изучения иностранных языков основаны игровой активности учеников.
Игра- это инструмент развития, с ее помощью познают мир. Поэтому логично использовать игру для изучения иностранного языка. Лучшие методики изучения иностранного языка для учеников включают в себя игровые ситуации разных типов.
В играх жанра "игры слов" ученики смогут изучить не только иностранный язык, но и свои дедуктивные способности. Так же в нашей программе используются различные яркие цвета, которые помогут в изучении и развитии зрительной памяти. Суть нашей программы в том, что между двумя объектами или словами устанавливается связь, которая создает из предметов, не имеющих между собой ничего общего, единое целое.
Классы в питоне
Всё в Python является объектами. Это очень расплывчатое утверждение, если до этого вы не изучали программирование вообще. Это означает, что каждый объект в Python-не имеет метод и значение по той причине, что все объекты базируются на классе. Класс - это проект объекта.
В Python-не мы также можем создавать собственные классы. Например в нашей программе мы создали класс c именем class WordGenerator() в которой выполняет позволяет блокировать поток до тех пор, пока в одном из указанных сокетов не появятся данные. Это очень удобно, если нужно обслуживать много сокетов и нет возможности создания большого количества потоков.
class WordGenerator():
def select(self): # выбираем слово из списка
# Selects a word from file
wordsFile = open('wordbank.dat','r') #открываем файл для чтение
numberOfWords = int(wordsFile.readline()) #сохраняем количество слов в переменную namerofwords
wordChosen = random.randint(0, numberOfWords) #сохраняем случайное число от 0 до количество слов
for i in range(wordChosen): #запускаем цикл for столько раз сколько получилось в переменное wordChoosen
self.word = wordsFile.readline() #считываем слова из файла wordbank
self.word = self.word[:-1].capitalize() # Converts 'word\n' to 'Word'
wordsFile.close() #закрываем файл
Рисунок 1. Код функция select
Генераторы Python - это простой способ создания итераторов. Все накладные расходы, которые мы упомянули выше, автоматически обрабатываются генераторами в Python.
Генератор - это функция, которая возвращает объект (итератор), который мы можем перебрать (по одному значению за раз). В нашей программе генератор максимальная количество подсказок с помощью команды numberOfMaxHints, скрываем случано выбранные буквы с помощью команды letterList[letterIndex] == '*' где '*' –случайно выбранная буква.
def generate(self):
# Converts the word into question word
self.select() #вызываем метод select
numberOfMaxHints = (len(self.word)) // 2
numberOfMinHints = (len(self.word)) // 3
hint = random.randint(numberOfMinHints, numberOfMaxHints) #случайное число подсказок
letterList = list(self.word) #список букв
while hint > 0:
letterIndex = random.randint(1, len(self.word) - 2) #случайный индекс буквы
if letterList[letterIndex] == '*': #скрываем случано выбранные буквы
continue
else:
letterList[letterIndex]='*'
hint -= 1
return (''.join(letterList)) # конвертируем список в строку
этот метод проверяет на правильность буквы
Рисунок 2. Листинг генератора generate(self)
Конструктором класса называют метод, который автоматически вызывается при создании объектов. Его также можно назвать конструктором объектов класса. Имя такого метода обычно регламентируется синтаксисом конкретного языка программирования. Так в Java имя конструктора класса совпадает с именем самого класса. В Python же роль конструктора играет метод __init__().
def __init__(self, parent, Wtext, command):
self.command = command
self.widget = Label(parent, bg = themeColor1, fg = actionColor1, font = 'consolas 38 bold', text = Wtext, width = 5)
self.widget.pack(side = LEFT, padx = 20)
self.widget.bind('<Enter>', self.hover)
self.widget.bind('<Leave>', self.unhover)
self.widget.bind('<Button-1>', self.action)
Рисунок 3. Конструктор метод __init__
Рисунок 4. Интерфейс главного окна
После использования программы, мы остались довольны: слова запоминаются с лёгкостью, у нас появился интерес к изучению языка.
Цель нашего творческого проекта достигнута, задачи в ходе работы выполнены полностью.
Нам кажется, что полученные навыки по изучению иностранного языка, обязательно пригодятся в жизни.
Мы точно уверены что наша программа поможет, облегчит и заинтересует учеников к изучению различных иностранных языков. И ученик сможет изучать в день около 50 слов. Что не является малым форматом. Мы думаем, в наше время, это очень важно знать иностранные языки.