-
LocalizationiOS/Wiki 2022. 1. 14. 20:29
안녕하세요!! 이번엔 Swift에서 Localization에 대해서 정리했습니다.
이번 글도 노션에서 옮겨와 말이 짧습니다!! 양해해주세용😽
Localization이란?
언어, 문화권이 다른 환경에서 앱을 사용할 수 있도록 지원하는 서비스
Localization을 지원할 경우, 사용자 기기의 기본 언어에 따라 국제화(현지화)가 이루어진다.
iOS 13 이상부터 사용자가 기기의 기본 언어와 관계없이 앱에서 선호하는 언어를 선택할 수 있다.
시간대, 숫자, 화폐 단위의 표현, 선호하는 레이아웃, 프로모션 등에서 차이가 발생할 수 있기 때문에,
언어 뿐만 아니라 문화적/환경적 측면도 고려할 필요가 있다.
사용법
- Localizable.strings
- 각 나라와 지역에 맞는 정적 메세지(고정된 텍스트)를 제공
- InfoPlist.strings
- 각 나라와 지역에 맞는 권한 문구를 출력
- Plural.stringsdict언어에 따라 순서가 다르거나, 단수나 복수, 숫자 표현 대응
- 각 나라와 지역에 맞는 표현 단위 등을 출력
앱스토어는 앱의 현지화와 상관없이, 제품 페이지의 메타 데이터 내용을 현지화 할 수 있다.
단, 앱의 기본 언어 설정은 Localizable.string 대응이 된 국가 중 선택 가능하다.
국제화(Internationalization)와 현지화(Localization)
국제화
앱이 특정 국가나 지역에 종속되지 않도록 호환성을 위해 앱을 설계하는 과정
언어 뿐만 아니라, 국가별 쓰기 방향(LTR, RTL), 숫자, 화폐, 날짜 등의 표기 방법, 시간대 등을 고려
→ 사용자가 해외 여행을 할 경우, 국가에 따라 표준 시간대, 날짜가 달라지는데 이런 변화를 감지하고 타임스탬프를 처리할 수 있는 것
I18N(Internationalization의 첫 글자와 마지막 글자 사이에 18개의 알파벳이 있다는 의미)로도 쓰인다.
현지화
그 국가와 지역에 맞게 앱을 번역하고, 리소스 작업을 하는 등 적합하게 구현하는 과정
→ 날짜와 시간 표현을 할 때, 그 나라에 맞는 형식으로 표현하는 것
L10N이라고도 한다.
'iOS > Wiki' 카테고리의 다른 글
POP(Protocol-Oriented Programming) in Swift (1/2) (0) 2022.03.28 ReactorKit 사용기 (0) 2022.03.05 Swift ARC(Automatic Reference Counting) (0) 2022.01.15 페이지네이션(Pagination) (0) 2022.01.13 UserDefaults (0) 2022.01.11 - Localizable.strings