[![Гравюра М. Эшера "Вавилонская башня"][1]_Гравюра М. Эшера «Вавилонская башня», 1928_][2]
Возможно, вы готовы к тому, что ваше приложение будет многоязычным уже на старте проекта. Но скорее всего, новость о необходимости интернационализации, как это однажды уже случилось с человечеством, застанет вас в разгаре строительства Вавилонской башни. В любом случае полезно иметь при себе джентльменский набор средств, дающих шанс завершить стройку века успешно.
Спустя четыре тысячи лет после Вавилонского столпотворения технологии предлагают нам несколько замечательных инструментов. Что же у нас есть?
Во-первых, сборная солянка — абстракция локали ([locale][3]). Локаль включает не только язык, но еще и письменность, календарь, правила форматирования чисел, денежных единиц, дат и пр.
Во-вторых, Юникод. Юникод — это не просто таблица кодирования символов. Это еще и различные формы одних и тех же букв, диакритические знаки, порядок сортировки символов, правила изменения регистра, алгоритмы нормализации строк, семейство кодировок UTF и многое другое.
Все это большое подспорье. Такие возможности, как правило, уже встроены в операционные системы и доступны в стандартных библиотеках. Программисты и пользователи во всех уголках планеты благополучно применяют одни и те же операционные системы, средства разработки, базы данных.
[Но, увы, нет в мире совершенства...][4]
[1]:
https://habrastorage.org/getpro/habr/post_images/7e6/c8b/60a/7e6c8b60aeefc6547c6ad52a6784b90d.png
[2]:
https://ru.wikipedia.org/wiki/%D0%92%D0%B0%D0%B2%D0%B8%D0%BB%D0%BE%D0%BD%D1%81%D0%BA%D0%B0%D1%8F_%D0%B1%D0%B0%D1%88%D0%BD%D1%8F_(%D0%B3%D1%80%D0%B0%D0%B2%D1%8E%D1%80%D0%B0_%D0%AD%D1%88%D0%B5%D1%80%D0%B0)
[3]:
https://www.lingvolive.com/ru-ru/translate/en-ru/locale
[4]:
https://habrahabr.ru/post/313284/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut