La mayoría de mis clientes solo requieren un idioma y, de hecho, especifican ese idioma. Por lo tanto, no pasamos tiempo localizando la aplicación. Sin embargo, eso no significa que podamos ignorar completamente otros idiomas. Así que nos atenemos a lo básico:
- Usa Unicode en todas partes. Es 2k10, no hay excusa para no hacerlo.
- Diseñe para cierta elasticidad en el diseño. Incluso con todo el inglés, las diferentes fuentes tienen huellas de pantalla muy diferentes en el mismo tamaño de punto.
- Mantenga las funciones de la aplicación / el modelado de datos fuera de la capa de vista
Personalmente, cuando un idioma de localización potencial es fundamentalmente diferente de aquel en el que se diseñó la aplicación, hay mucho más en juego que la simple selección de texto. Si bien el reemplazo de texto ayuda y permitirá a una empresa obtener una implementación "rápida y sucia" en una nueva ubicación comparativamente antes, no resuelve las diferencias fundamentales en la forma en que piensan los usuarios en el otro idioma.
He estudiado japonés, y aunque solo puedo considerarme un principiante de rango en ese idioma, sé lo suficiente como que hay algunos conceptos para los que no hay una traducción directa. Hay diferentes ideas de lo que hace que algo sea utilizable. Si bien los grandes conceptos principales pueden ser similares, los detalles realmente marcan la diferencia con los usuarios.
Para responder realmente a las necesidades de una cultura muy diferente, necesita una cara completamente nueva para su aplicación. Es por eso que la separación Modelo / Vista / Controlador se vuelve aún más importante. Siempre que la aplicación funcione de la misma manera, la parte de la vista se puede reemplazar completamente. Cuando eso sucede, alguien está planeando pagar algo de dinero real para abordar el problema de manera adecuada.