Тип работы:
Предмет:
Язык работы:


Автоматизация локализации пользовательских интерфейсов

Работа №63177

Тип работы

Дипломные работы, ВКР

Предмет

информатика

Объем работы39
Год сдачи2017
Стоимость4750 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
33
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 2
1. ПОСТАНОВКА ЗАДАЧИ 3
2. ПРОЕКТИРОВАНИЕ 5
2.1 Python 5
2.2 API перевода 5
2.3 Регулярные выражения 9
2.4 Конфигурация 9
2.5 Алгоритм работы 10
3. РАЗРАБОТКА 12
3.1 Файл конфигурации 12
3.2 Наблюдатель изменений 13
3.3 Главная функция утилиты 15
3.4 Парсинг файлов локализации 17
3.5 Функция перевода 17
3.6 Функции генерации файла 22
3.7 Работа с кэшем 23
4. ДЕМОНСТРАЦИЯ РАБОТЫ 25
ЗАКЛЮЧЕНИЕ 29
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 31
ПРИЛОЖЕНИЕ

При разработке практически любого программного продукта, исключая внутренний продукт, перед многими командами разработчиков и бизнесменов встаёт вопрос о расширении их продуктов на иноязычную аудиторию. Для решения данной задачи необходимо привлечение технических переводчиков. Перевод на каждый язык, на который планируется локализация, требует привлечения как минимум одного технического переводчика. В том случае, когда объём материала слишком большой, на один язык уходит большее число переводчиков, что становится затратно. А небольшим стартапам может вообще не хватать ресурсов на локализацию на множество других языков.
Кроме того, форматирование файлов, полученных от переводчиков, и формирование файла локализации для каждого конкретного программного решения требует определенных временных затрат.
Цель данной дипломной работы состоит в разработке инструмента, позволяющего сократить расходы на локализацию путем автоматизации процесса перевода пользовательских интерфейсов программных решений независимо от используемых при разработке технологий. Таким образом, для достижения поставленной цели необходимо решить ряд задач, а именно:
- Анализ альтернативных решений;
- Проектирование программного инструмента;
- Разработка функций сканирования и извлечения данных из
интерфейсов;
- Разработка функции перевода с использованием сторонних облачных средств;
- Г енерация файлов локализации;
- Тестирование разработанного программного решения.
1. ПОСТАНОВКА ЗАДАЧИ
Целью работы является разработка программного решения, позволяющего автоматизировать большую часть работы технических переводчиков, что уменьшит финансовые затраты на их найм.
В ходе анализа альтернативных решений были выявлены следующие ресурсы:
- ontranslate.com
- tethras.com
- localizejs.com
- ondemand.lionbridge.com
- google translate toolkit
Однако у всех перечисленных сервисов есть один существенный минус - долгая обработка по причине привлечения технических переводчиков. Кроме того, каждый из перечисленных сервисов имеет ограничения на платформу разработки и предоставляет только платные услуги.
Разрабатываемое программное решение должно быть бесплатным, иметь открытый исходный код, предоставлять возможность перевода на множество языков, а также позволять обрабатывать различные форматы файлов локализации. Программный инструмент должен быть хорошо задокументированным и расширяемым, чтобы команда разработки смогла настроить его интерфейсы и языки.
Исходя из всего вышесказанного, программное решение, создаваемое в результате выполнения данной дипломной работы - это утилита, которая должна удовлетворять следующим требованиям:
1. Иметь конфигурацию, позволяющую настраивать утилиту под требования разработки.
2. Автоматически сканировать файлы интерфейсов. Пользователь не должен расписывать список файлов, достаточно указать формат.
3. Переводить слова на множество языков.
4. Генерировать ресурсные файлы, которые содержат в себе перевод и подключаются к проекту.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В ходе дипломной работы было разработано программное решение, позволяющее автоматизировать большую часть работы по локализации приложений. Тем самым уменьшается количество рабочих часов технических переводчиков, что существенно сокращает расходы компании.
Программное решение имеет документацию кода, поэтому разработчики могут расширять утилиту для своих нужд. Представлены инструменты для работы с любым видом интерфейса.
В ходе дипломной работы выполнены такие задачи, как:
- Проектирование работы утилиты;
- Интеграция с API переводчиков;
- Парсинг файлов локализации;
- Г енерация файлов локализации;
- Конфигурирование утилиты.
Опытный письменный переводчик, работая с исходным текстом средней сложности, может переводить в день без потери качества 7-8 стандартных страниц (по 1800 знаков с пробелами) [9].
Время работы утилиты складывается из чтения и анализа файлов, переводе слов и генерации новых файлов. Перевод одной строки в сто символов у Google API занимает 250 мс, у Яндекса - 120 мс.
На примере, описанном выше, время выполнения было всего одну секунду. Учитывая то, что в примере текст был равен 100 символам, утилита потратит на выполнение с 14400 символов текста 144 секунд.
Время выполнения перевода утилиты и людей переводчиков в зависимости от компетенции технического переводчика различается в 200 раз, что потенциально сокращает расходы на технических переводчиков примерно на эту сумму. Но для качественного перевода технический переводчик должен всё равно потратить время на проверку и исправление ошибок. Если текст будет сложный, то сервис перевода имеет большую вероятность перевести его некорректно, поэтому реальное сокращение расходов примерно раз в 50.
Утилита существенно сокращает время локализации приложения. Хотя чтобы получить качественный перевод всё равно понадобятся профессиональные переводчики, но время их работы существенно сократится, так как им придётся лишь проверять и немного исправлять перевод.



1. Статистика популярности языков программирования [Электронный ресурс]. - http://statisticstimes.com/tech/top-computer-languages.php
2. Документация python [Электронный ресурс]. - https://www.python.org/ doc/
3. Что такое API [Электронный ресурс]. - https://ru.wikipedia.org/wiki/API
4. Сравнение переводчиков Яндекс и Google [Электронный ресурс]. - https://repetitora.com/sravnitelnyj-analiz-sistem-perevoda-yandeksperevod-i -googletranslate
5. Страница Yandex Translate Api [Электронный ресурс]. - https://tech.yandex.ru/translate/doc/dg/concepts/About-docpage/
6. Как работает машинный перевод [Электронный ресурс]. - https://tech.yandex.ru/translate/doc/intro/concepts/how-works-machine-trans lation-docpage/
7. Регулярные выражения [Текст] / Дж. Фридл. - Символ-Плюс, 2008. - 598 с.
8. HTTP [Электронный ресурс]. - https://ru.wikipedia.org/wiki/HTTP/
9. Сколько страниц в день может перевести переводчик? [Электронный ресурс]. - http://www.langinfo.ru/stati-dlja-perevodchika/skolko-stranic-v- den-mozhet-perevesti-pe.html
10. Изучаем Python, 4-е издание. [Текст] / М. Лутц. - Символ-Плюс, 2011. - 1280 c.
11. Веб-сайт с исходными кодами программ [Электронный ресурс]. - https://github.com/


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ