UI에서 여러 언어를 지원하도록 데스크톱 응용 프로그램을 준비하는 방법에 대한 질문을하려고했습니다.
주제에 대한 기존 질문을 검색 할 때 “국제”라는 단어를 생각하고 있었기 때문에 국제화 태그를 선택하고 일치하는 질문을 읽었습니다.
결국 나는 아마도 지역화 태그가 붙은 질문을보고 있어야한다는 것을 깨달았습니다. 그러나이 두 용어를 섞어 놓는 것은 혼자가 아닙니다.
그렇다면 현지화와 국제화의 주요 차이점은 무엇입니까?
또한, 그들 사이의 명확한 구별이 정말로 중요합니까?
답변
- 국제화 (i18n)
- 하나의 언어 / 로케일 / 문화에 연결되지 않도록 소프트웨어를 변경하는 프로세스.
- 현지화 (l10n)
- 특정 언어 / 로캘이 지원되도록 소프트웨어에 적절한 리소스를 추가하는 프로세스 이 Wikipedia 항목 보다 범위가 크지 만 시작하기 좋습니다.
이들을 구별하는 가치는 (이론적으로) 프로그램이 i18n 프로세스를 통과하면 필요한 많은 l10n 프로세스를 반복 할 수 있다는 것입니다. 또한 언어를 정확하게 사용하는 것이 좋습니다.
답변
애플 에 따르면 :
국제화 는 현지화를 용이하게하기 위해 응용 프로그램을 디자인하고 구축하는 프로세스입니다. 현지화 는 두 개 이상의 문화적으로 구별되는 시장에 대한 국제화 된 응용 프로그램의 문화 및 언어 적 적응입니다.
답변
국제화 는 현지화를 위해 응용 프로그램을 준비 합니다. 예를 들어 데이터베이스에 저장된 문자를 유니 코드 () utf8mb4
대신 인코딩하여 latin1
문자열을 리소스 파일로 이동 하여 날짜, 시간 및 통화 형식 등을 사용할 수 있습니다.
예를 들어 중국어 버전의 앱을 판매하려는 경우 번역자를 고용하여 zh-CN 리소스 파일을 작성하고 새로운 날짜 / 시간 / 통화 형식을 사용하여 현지화해야합니다.
답변
L10n은 때때로 i18n이 실패한 곳을 표시 할 수 있습니다. 예를 들어, 사전에 명사로 사용되는 단어에 대한 단일 항목이 있고 다른 언어에서 동일한 단어로 번역되지 않는 영어의 동사 또는 UI 요소가있는 경우 / design은 문화에 적합하지 않습니다 (L / R 방향).
따라서 l10n은 “일반적으로”i18n 이후에 발생하지만 i18n으로 다시 피드백하고 추가 재 설계가 필요할 수 있으므로 몇 가지 현지화가 완료 될 때까지 앱을 완전히 국제화 할 수 없습니다.
답변
Wikipedia 에 따르면
국제화 는 다양한 언어 및 지역에 맞게 소프트웨어 응용 프로그램을 설계하는 과정입니다 without engineering changes
.
현지화 는 adapting internationalized software
로캘 별 구성 요소를 추가하고 텍스트를 번역하여 특정 지역 또는 언어에 대한 프로세스입니다 .
또한 지역화 (다른 로케일에 대해 여러 번 수행 될 수 있음)는 infrastructure or flexibility provided by internationalization
(한 번만 수행되거나 진행중인 개발의 필수 부분으로 이상적으로 수행됨 )을 사용합니다 .
답변
세계화 (G11n) : 다국어 소프트웨어 제품을 개발하고 세계 시장에 마케팅하는 프로세스입니다.
다국어 소프트웨어의 개발은 현재 두 단계로 진행됩니다. 첫 번째 단계는 국제화이고 두 번째 단계는 현지화입니다.
국제화 (I18n) : 제품을 일반화하여 재 설계 (예 : 언어 및 문화 중립적)없이 여러 언어 및 문화적 규칙을 처리 할 수 있도록하는 프로세스입니다.
현지화 (L10n) : 제품을 가져 와서 판매 할 대상 지역 (국가 / 지역 및 언어)에 언어 및 문화적으로 언어 적으로 적합하게 만드는 프로세스입니다 (예 : 언어 및 문화 별).
답변
많은 답변, 많은 정확한 정보, 그러나 나의 대답은 조금 다른 관점입니다.
국제화 -개발자가 특정 언어의 코드 직접 메시지 / 오류 메시지 / 버튼 이름 / 레이블 캡션 / 등을 가지고 있지 않지만 번역 기능에 전달 되는 키 가 있고 현재 사용자의 로캘에 따라 번역 기능이 최종 텍스트를 반환하는 경우 in english / france / etc …
번역 기능은 스토리지 (db / files / associative array / etc)와 함께 작동합니다.
저장소에는 coode로 사용 되는 키 와 응용 프로그램이 지원하는 특정 언어의 텍스트 인 값이 포함됩니다.
현지화 -이 프로세스에 개발자를 참여시키지 않고 키 에 적합한 새 언어 (예 : 스페인)로 새 값을 새 프로세스에 추가 하는 프로세스입니다.
예를 들어 스토리지가 있습니다.
key | english | italian |
------+------------+-------------------+
title | Welcome | Benvenuto |
agree | I agree | Sono d'accordo |
thank | Thank you | Grazie |
국제화는 지역화 confirm(t(agree));
대신 confirm("I agree");
또는 confirm("Sono d'accordo");
지역화 와 같은 코드에서 사용하고 있습니다 -스토리지에 새로운 로케일을 추가합니다.
key | english | italian | spanish |
------+------------+-------------------+------------------+
title | Welcome | Benvenuto | Bienvenido |
agree | I agree | Sono d'accordo | Estoy de acuerdo |
thank | Thank you | Grazie | Gracias |
여기서 개발자는 업데이트 코드가 필요하지 않으며 번역 기능은 적절한 텍스트를 올바르게 전달합니다.