Браузерное расширение, предоставляющее информацию, такую как перевод, словарные значения и аудио для выделенного на произвольной странице сети Интернет английского слов. Набор ошибок, возвращаемых всеми функциями. Структура хранения данных на сервере.
Аннотация к работе
Браузерное расширение, имея доступ к страницам, просматриваемым пользователем и их содержимому, позволяет различным образом использовать время, которое пользователь тратит на просмотр вебсайтов для изучения языка и в то же время помочь пользователю понять информацию, представленную на иностранном языке путем, например, предоставления переводов и словарных значений непонятных слов и фраз. Так же данное расширение предоставляет пользователю возможность добавить слова, показавшиеся ему незнакомыми или сложными, в специально разработанное мобильное приложение для изучения иностранных языков, использующее различные методики, позволяющие эффективным образом расширять словарный запас. В целом, данная программа является типичным примером расширения, предоставляющего дополнительную информацию, помогающую пользователю понять значение того или иного слова на странице. Предоставляет по двойному клику по слову на странице его перевод, аудио и дополнительную информацию о нем, добавляя при этом слово в историю просмотренных слов, и предлагая добавить его на изучение в мобильное приложение. По умолчанию данная библиотека использует для лемматизации слов на английском языке лексическую базу данных WORDNET [29], имеющую в своем составе морфологический процессор morphy [30], который в рамках WORDNET используется для поиска нормальной формы слова для переданной строки, что позволяет осуществлять поиск по WORDNET, хранящей слова в нормальной формах, по поисковым запросам, содержащим слова не находящиеся в нормальной форме.Целью данной работы являлось создание приложения в форме расширения браузера GOOGLECHROME, предоставляющего перевод и дополнительную информацию о словах, выделенных пользователем на странице, хранящего историю просмотренных слов, а так же возможность добавить слово на изучение в мобильное приложение для изучения иностранных слов. В ходе реализации поставленных задач были изучены способы организации распределенных приложений, проанализированы возможности для запуска серверного функционала с помощью облачных сервисов, изучены способы выделения ключевых слов на странице и лемматизации слов, проработана архитектура клиентской и серверной частей, а так же структура хранилища данных. В результате работы была разработана система, представляющая из себя расширение для браузера GOOGLECHROME (клиент), предоставляющее перевод слов на странице, просмотр истории слов и подсветку важных слов на странице, и серверную часть, хранящую историю слов пользователя и выполняющую запросы клиента на получение данной истории и на выделение важных слов на странице.Листинг файла background.js (часть 1). Листинг файла background.js (часть 2). Листинг файла background.js (часть 3). Листинг файла background.js (часть 4). Листинг файла background.js (часть 5).Листинг функции get Added Words (часть 1). Листинг функции get ADDEDWORDS (часть 2). Листинг функции get IMPORTANTWORDS (часть 1). Листинг функции get Important Words (часть 2). Листинг функции teach TFIDF (часть 1).
Вывод
Целью данной работы являлось создание приложения в форме расширения браузера GOOGLECHROME, предоставляющего перевод и дополнительную информацию о словах, выделенных пользователем на странице, хранящего историю просмотренных слов, а так же возможность добавить слово на изучение в мобильное приложение для изучения иностранных слов.
Также разработанное браузерное расширение должно стать основой для реализации экспериментального функционала, улучшающего пользовательский опыт изучения языка. Одним из примеров такого функционала, который был реализован в данной работе, является выделение важных и новых для пользователя слов на странице с использованием специальных алгоритмов.
В ходе реализации поставленных задач были изучены способы организации распределенных приложений, проанализированы возможности для запуска серверного функционала с помощью облачных сервисов, изучены способы выделения ключевых слов на странице и лемматизации слов, проработана архитектура клиентской и серверной частей, а так же структура хранилища данных.
В результате работы была разработана система, представляющая из себя расширение для браузера GOOGLECHROME (клиент), предоставляющее перевод слов на странице, просмотр истории слов и подсветку важных слов на странице, и серверную часть, хранящую историю слов пользователя и выполняющую запросы клиента на получение данной истории и на выделение важных слов на странице. Данная система полностью удовлетворяет поставленным перед ней требованиям.
В качестве направлений дальнейшей работы можно выделить следующие: Увеличение скорости работы системы;
Покрытие системы автоматическим тестированием для улучшения стабильности работы;
Улучшение качества перевода слов и предоставляемого контента;
Усовершенствование алгоритма выделения важных слов на странице путем улучшения качества собираемого по истории просмотренных страниц пользователя референсного корпуса, а так же использования и совмещения других метрик странности слова;
Реализация нового функционала, предоставляющего новые возможности для изучения иностранных языков и интеграции с мобильным расширением.
Список литературы
Lingualeo - английский язык онлайн. URL: (дата обращения 20.05.2016)
Леопереводчик. URL: (дата обращения 18.05.2016)
Azab, M., Hokamp, C., Mihalcea, R. Using Word Semantics To Assist English as a Second Language Learners. // Proceedings of NAACL-HLT. 2015. С. 116-120
Trusty, A., Truong, K. N. Augmenting the web for second language vocabulary learning. // Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. 2014. С. 3179-3188
Kovacs, G. Multimedia for language learning.Massachusetts Institute of Technology, 2013
Fast, flexible, and lean implementation of core JQUERY designed specifically for the server. URL: https://github.com/cheeriojs/cheerio(дата обращения 20.05.2016)
Gulp.js - the straming build system. URL: http://gulpjs.com/(дата обращения 20.05.2016)
Bower. URL: http://bower.io/(дата обращения 20.05.2016)
Chrome.history - Google Chrome. URL: https://developer.chrome.com/extensions/history(датаобращения20.05.2016)
Natural Language Toolkit. URL: http://www.nltk.org/(датаобращения20.05.2016)