In the context of plugin development, internationalization is the process of preparing software so that its messages can be translated into a specific regional dialect, whereas localization refers to the actual translating of those messages. These two terms sometimes blur together because they are so closely related, but to be clear, we are focusing on internationalization in this section. The goal is to ensure that your plugin's messages can be easily translated (that is "localized").
Note
See the official documentation on internationalization (http://goo.gl/fGXQ) as well as the documentation for translating WordPress (http://goo.gl/Mlbf) for more information on this topic. Although it is not technically required, it is highly recommended that you internationalize your plugin so that users from different countries can localize it.
Giving you a heads up on the following sections, the process works in several stages:
First, you internationalize your plugin...