데브허브 | DEVHUB | How-to: Localization - part 2, smart stringsHow-to: Localization - part 2, smart strings
- 동적 문자열 처리를 위해 정적 문자열이나 단순 문자열 연결 방식은 언어별 문법 차이(어순 등)와 번역 맥락 부족으로 인해 비효율적입니다. 🔄
- '스마트 문자열'은 이름 지정된 플레이스홀더를 사용하여 번역자에게 더 많은 맥락을 제공하며, 단순한
string.format을 넘어선 강력한 로직 처리 기능을 제공합니다. 🧠
- 스마트 문자열의 핵심 기능 중 하나는 언어별로 복잡하게 달라지는 복수형(예: 영어 2개, 웨일스어 5개, 일본어 1개)을 효율적으로 처리하여 번역자가 직접 정의할 수 있게 합니다. 🔢
- 스마트 문자열은 데이터를 가져오는 '셀렉터'와 이를 문자열로 변환하는 '포매터'(예: 복수형, 선택, 날짜, 목록)로 구성되며, 사용자 정의 셀렉터 및 포매터 생성이 가능합니다. 🛠️
- CLDR 표준에 기반한 복수형 규칙이 내장되어 있어, 개발자가 코드를 작성할 필요 없이 번역자가 표준화된 방식으로 복수형을 정의하고 관리할 수 있습니다. 🌍
- 여러 항목으로 구성된 목록을 자동으로 포맷하고 구분자(쉼표, 'and' 등)를 언어에 맞게 번역할 수 있어, 목록 처리 코드를 줄여줍니다. 📜
- 스마트 문자열의 궁극적인 목표는 문자열 처리 관련 코드를 최소화하고, 모든 번역 관련 문제를 코드 수정 없이 번역 파일 내에서 해결할 수 있도록 하는 것입니다. 🚀
- Unity에서 명명된 플레이스홀더, 복수형 포매팅, 번역본 가져오기, 언어별 스마트 문자열 활성화, 슬라이더를 통한 동적 값 업데이트 등 실제 구현 과정을 시연했습니다. 🎮