Chapter 13: Internationalization and Localization

Localization is a key concern for any application with a global market. Users want to interact in their own languages, with their familiar formatting. Supporting this in your application is called internationalization (sometimes abbreviated “i18n” for the 18 characters between the “i” and the “n”) and localization (“L10n”). The differences between i18n and L10n aren’t really important or consistently agreed upon. Apple says, “Internationalization is the process of designing and building an application to facilitate localization. Localization, in turn, is the cultural and linguistic adaptation of an internationalized application to two or more culturally-distinct markets.” (See “Internationalization Programming Topics” at This chapter uses the terms interchangeably.

After reading this chapter, you will have a solid understanding of what localization is and how to approach it. Even if you’re not ready to localize your application yet, this chapter provides easy steps to dramatically simplify localization later. You learn how to localize strings, numbers, dates and nib files, and how to regularly audit your project to make sure it stays localizable.

What is Localization?

Localization is more than just translating strings. Localization means making your application culturally appropriate to your target audience. iOS requires that nib files be localized for each language individually rather than providing an auto-layout ...

Get iOS 5 Programming Pushing the Limits: Developing Extraordinary Mobile Apps for Apple iPhone, iPad, and iPod Touch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.