i18n, l10n에 대처하는 우리의 자세

개발하는동안 경험했던 i18n, l10n에 대한 팁들을 모았습니다. 몰라도 할 수 있지만 글로벌 진출을 노린다면, 변수 선언할 때 타입을 뭘로 할지, textview에게 공간을 얼마나 할당해야할지 고민할 때 도움이 되시리라 생각합니다.

다른 팁들이 있다면 알려주시면 감사히 취합하도록 하겠습니다 🙂

  • 모든 나라가 그레고리안 달력을 쓰는 것은 아니다.
    이란은 이란 달력(Iranian Calendar)를 사용한다. 이는 이란의 카드 사에서도 사용하는 공식 표기 법이다. 이를 이용하면 이 글을 쓰는 올 해 2014년은 1393년이 된다. 둘 간의 변환은 여기에서 해볼 수 있다.
  • (대체적으로) 같은 뜻을 가진 문장이라면, 동유럽 국가 언어가 길다.
    다국어를 지원하면 string이 모두 보이기에 공간이 충분한지 궁금할 때가 있다. 이 때에는 러시아, 슬로바키아, 우크라이나 쪽 언어를 확인해보고 잘 보인다면 공간이 충분하다고 봐도 무방하다.
  • 프랑스어는 캐나다에서도 쓴다.
    퀘벡 프랑스어라고도 하며, 캐나다 퀘벡 주에서 사용된다.
  • 스페인어 하나로 꽤 많은 국가를 지원할 수 있다.
    우리나라는 영어가 (비공식) 제2외국어라 잊을 수도 있지만, 사실 가장 많이 쓰는 언어는 스페인어다. 스페인어를 모국어로 사용하는 나라만 꼽아도 수십개다. 어떤 나라가 포함되어 있는지는 여기서 위키피디아에서 참고하자.
  • 오른쪽에서 왼쪽으로 쓰는 언어도 있다.
    아랍어는 오른쪽에서 왼쪽으로 글을 쓰는 나라이다. 정렬 방식까지 고집해서 GUI/UX를 맞추면 일부 언어 국가에서 올바르지 않은 모양이 될 수 있다.
  • (대략) 60여개 언어만 번역하면 전세계를 지원할 수 있다.
    세계에서 사용되는 언어의 수에 대한 연구자료를 보면 최소 2,500 개에서 많개는 7,000여 개에 이른다고 한다. 하지만, 이 언어를 모두 지원할 수는 없지 않은가? 구매능력도 어느정도 있고 스마트폰도 보급은 되어 있는 나라들이 앱을 만드는 우리 입장에서는 잠재 고객일 것이다. 이를 감안한다면, 약 60~65개국 정도 지원하면 전세계를 지원한다고 봐도 무방하다. 또, 스페인어, 영어, 포루투칼어, 프랑스어 등이 여러 나라를 지원하므로 언어 갯수는 더 줄어들 것이고.
  • 세계를 겨냥한다면 한국어, 영어, 중국어, 일본어는 지원해야 한다.
    한국어는 모국어니까 넣은 것도 있지만 앱 매출이 많이 나는 나라 중 하나이다. 다음 몇개 더 꼽는다면 스페인어, 포루투칼어, 독일어 정도가 포함될 수 있다.
  • 번역된 string도 잘 넣어야 한다.
    안드로이드 개발자 사이트에 string(정확히는 resource)을 어떤 순으로 찾는지 잘 나와있다. 하지만, 읽기 싫은 사람도 있을터. 그런 분들을 위해 간단히 요약하면 아래와 같다. 영어로 예를 들면 설명이 쉬울 것 같다. 아래 예를 보면 알겠지만, 영어만 넣겠다면 여러곳에 복사할 필요가 없다. /res/values/ 폴더안에 넣으면 언어와 지역이 맞는 곳 > 언어가 맞는 곳 > 기본 값 순으로 찾기 때문에 영어를 올바로 지원할 수 있다.
/res/values/string.xml : default 언어(보통 영어)
/res/values-en/string.xml : 영어권 언어(보통 미국식 영어)
/res/values-en-rGB/string.xml : 영국지방 영어(영국식 영어)
  • 통화 표시는 매우 다양하다.
    먼저  $나 ₩같은 통화 단위 표시는 금액의 앞이나 뒤에 올 수 있다. 한국은 1000원이 앱이나 아이템의 기본 가격이고 1보다 작은 숫자를 쓰지 않지만(장부상으로 존재), 다른 나라는 소숫점 이하 두자리(예. 1.25)도 돈의 가치가 있으며 종종 쓴다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.