Re: переход на UNICODE
От: vmpire Россия  
Дата: 06.05.08 15:42
Оценка: 3 (1)
Здравствуйте, RamsesV, Вы писали:

RV>Не уверен, что правилъный форум нашел, тогда сорри за оффтопик. Естъ болъшой достаточно сложный программный комплекс: client/server, сервер держит информацию в базах данных — ORACLE, MS SQL Server. Серверная частъ написана на ANSI-C. Из-за интернационализации софта поставлена задача переходитъ на UNICODE. Всё должно работать под виндой и под UNIX-ом (код на 90% портируемый, всё зависящее от оси прячем за wrapper-ами).


RV>Опыта в таком совершенно нет, так что вопрос: с чего начатъ, где можно про это посмотретъ? Меня интересует в первую очередъ база и серверные процессы ( ANSI-C + Dynamic SQL + либо ODBC либо — для ORACLE — доморощенный похожий на ODBC интерфейс). Так с ходу:


RV>меняем типы в базе: например в ORACLE — VARCHAR2 -> NVARCHAR2. Переменные в программах -> wchar_t и все строковые-функции меняем на wc....


RV>Но что-то всё оченъ просто получается... Наверно естъ какие-то подводные камни?



RV>Еще говорят что-то насчет ресурсных файлов с локализациями — что это за зверь? Стыдно конечно признаться, но никогда не возникало необходимости в них, так что тут плаваю немного. Ткните в ссылочку плиз (тоже соответственно дла винды и UNIXa).


RV>Заранее спасибо за совет!


Для начала, попробуйте конкретизировать, что Вам нужно. Есть два понятия:
Глобализация (internationalization, i18n) — возможность работать в разных языковых окружениях и уметь обрабатывать тексты на разных языках
и
Локализация (localization, l11n) — представление пользовательского интерфейса на разных языках, с разными форматами даты и чисел...

Глобализации обычно реализуется через использование unicode во всех местах, где может быть пользовательский текст.
Локализация же обычно делается через ресурсные файлы или через ту же базу. В этих файлах (или в базе) хранятся переводы сообщений и картинок на разне языки

Если Вам нужно и то и другое — разбейте задачу на две части и делайте вначале глобализацию
Обычно, с глобализацией проблем немного, но они могут быть, особенно в сложных системах.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.