Хабрахабр

[Из песочницы] Программ для изучения английского очень много, но стоит ли какой-нибудь из них пользоваться если ты программист?

Всем привет, меня зовут Алексей. Я давно увлекаюсь программированием, хоть это и не является моей основной профессией. А ещё где-то год назад я увлёкся изучением английского языка.

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

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

Главные из них: невозможно прослушать произношение слова (только прочитать транскрипцию) и нельзя быстро открыть слово например в словаре Лингво или где-нибудь ещё. Конечно, можно пользоваться бумажными карточками, но они тоже имеют много недостатков. В общем учить по бумажным карточкам я посчитал плохой идеей в 21 веке.

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

Все программы и файлы о которых будет рассказываться в этой статье лежат в архиве: yadi.sk/d/A4UHOXCTpW9eow

image

Главной идеей стал принцип бумажных карточек. Первым что я написал стала программа для изучения английских слов. Но теперь у меня появились возможности которые даёт компьютер, и это очень круто!
В программу нужно перетащить файл в TXT который содержит список слов (каждое слово на новой строке). Я попытался сделать так удобно, будто я работаю с бумажными карточками. Представьте что этот список (файл TXT) это стопка слов. Для примера список из 2500 самых популярных слов лежит в архиве. Например, сегодня вы выучили 15 слов, они находятся в списке в название которого входит дата следующего повторения и номер этого повторения (например, 15. Удобство в том что как и в жизни можно разработать собственную систему изучения и повтора слов, и перебрасывать слова между файлами. Вы повторили слова 15 января, теперь слова нужно повторить через два дня. 01 1). 01 2. То есть файл можно назвать 17. Далее эти слова можно повторить через 4 дня, затем через 8, а потом их можно вбросить в файл «ВЫУЧЕНО.txt» и повторять вместе с другими выученными словами, например, раз в месяц.

Можно перетаскивать слова между списками потянув мышкой за слово и отпустив его над другим списком. Таких списков можно открыть одновременно до трёх. Можно перетасовывать файлы в списке, нажав кнопку «Рандом». Можно это сделать через Блокнот, нажав кнопку «open» а после редактирования кнопку «refresh». Одноимённая кнопка откроет этот список (это удобно когда хочешь позже вернуться к слову). Нажав * слово попадёт будет в списке «Отложить».

И при переносе в него слов они не перемещаются из исходного списка, а копируются в него. Есть список слов «ЗАБЫЛ», в него нельзя вбросить другой файл. Я использую этот список для слов которые хочу чаще повторять.

Также если в папке «sound» будет файл слово.wav то появится кнопка озвучить слово. Щёлкнув по слову мы увидим это слово и его транскрипцию если она есть в базе (файл Transcription.txt, там 18000 слов). Намекну что можно попробовать вытащить из AB… Lin… но я этого не говорил). (Где взять слова в формате wav? Если озвучки слова нет то появится кнопка голосового ассистента (я использовал утилиту Govorilka_cp.exe, которая работает через командную строку).

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

image

Здесь можно написать перевод слова и его мнемонику. Нажав её мы откроем окно изучения и редактирования слова. Чтобы сохранить картинку к слову, нужно при включённой галке «поймать картинку» сохранить любое изображение на рабочий стол (картинка будет автоматически удалена с рабочего стола, и помещена в папку программы).

Чтобы легче запоминать похожие по написанию слова. Так же написал нужную мне функцию «Похожие слова». Особенно рассказывать сейчас про неё не стану, просто оставил свои похожие слова в программе, можно нажать кнопку и легко разобраться.

Чтобы добавить свои онлайн словари, нужно нажать кнопку «Онлайн словари» и отредактировать текстовой файл, чтобы на каждой новой строке ссылка на странницу онлайн словаря. Главная функция этого окна изучение слова в разных онлайн словарях (кстати можно одновременно открыть сколько угодно слов). И достаточно поставить вместо слова символ ~ чтобы программа меняла его автоматически на открытое слово. Как правило все ссылки содержат само слово. (Например translate.google.ru/#view=home&op=translate&sl=en&tl=ru&text=~ программа заменит на translate.google.ru/#view=home&op=translate&sl=en&tl=ru&text=red если открыто слово red).

Я использую для изучения:

  • словарь Google (там удобно показана частота использования слова в разных значениях);
  • примеры промт (там показано как именно переводится слова в текстах обработанных промт);
  • и конечно ABBYY Lingvo (если там зарегистрироваться, то появится много словарей, лично я рекомендую Учебный словарь и Англо-русский словарь (Американский вариант)).

На первой вкладке можно увидеть перевод слова в словарях, которые мне удалось найти в интернете и привести в свой формат (они находятся в папке «dictionary_plus»). А также примеры использования слова.

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

image

Чтобы учить слова на телефоне, я написал программу «HTML СЛОВА». Но это не единственная программа, которую я написал для изучения английского языка. А если в одной директории с html файлом будет папка «sound» с wav файлами то при клике по транскрипции можно будет прослушать произношение. Она создаёт html файл из списка слов, этот файл перебрасывается на телефон и позволяет повторять слова через браузер телефона.

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

image

Можно закидывать в программу списки слов, задать каждому списку свой цвет. ПОДСВЕТКА СПИСКОВ СЛОВ. Это очень удобно, например, можно создать список слов которые вы уже знаете, и подсвечивать их синим. и слова в любом тексте будут подсвечиваться этим цветом. Все остальные слова в тексте будут чёрными. А слова которые хотите выучить красным. (Чтобы закидывать списки слов нужно нажать жёлтую кнопку СПИСОК).

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

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

И все слова которые не найдены в ваших списках будут отображены в панели справа, с переводом. Нажимая кнопки стрелки влево и вправо, можно переходить на следующее или предыдущее приложение.

Но для этого нужно добавить свой ключ полученный у яндекса в файл «yandex_api.txt» папки common. Если нажать значок похожий на глобус, то можно будет получить перевод через API Яндекса.

Создав html файл. Я также написал функцию, которая даёт возможность получить этот же функционал чтения на телефоне. Для этого нужно нажать синюю кнопку с изображением смартфона. Его тоже можно сделать с переводом каждого предложения.

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

Спасибо если дочитали мой пост до конца.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть