La mayoría de mis clientes requieren solo 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 por completo otros idiomas. Así que nos quedamos con lo básico:
- Use Unicode en todas partes. Son 2k10, no hay excusa para no hacerlo.
- Diseño 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 aplicación / modelado de datos fuera de la capa de vista
Personalmente, cuando un idioma de localización potencial es fundamentalmente diferente del 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á que una compañía obtenga 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 en ese idioma, sé lo suficiente 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, son los detalles los que realmente marcan la diferencia con los usuarios.
Para abordar verdaderamente 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. Mientras la aplicación funcione de la misma manera, la parte de la vista se puede reemplazar por completo. Cuando eso sucede, alguien está planeando pagar algo de dinero real para abordar el problema adecuadamente.