Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Interacción Hombre-Máquina
2. El Factor Humano
3. Diseño Gráfico
4. Estilos de Interacción
5. Metáforas
& 6. Internacionalización
7. Soporte al Usuario
8. Usabilidad Web
9. Guías y Estándares
10. Accesibilidad
11. Trabajo cooperativo
12. Evaluación
6. Internacionalización
n Definición
n Internacionalización y localización
n Niveles
n Modelo de localización
n Ventajas de construir aplicaciones internacionales
n Elementos específicos de la localización
n Ejemplo
1
Internacionalización de las Interfaces
Introducción
Internacionalización - Localización
Internacionalización
Proceso de construir un producto para que sea utilizado en el
mercado internacional, especificándolo en el diseño de sus
características y en el código
Localización
Adaptación de un producto software al lenguaje y a las
convenciones locales y culturales de una región particular
Cada país tiene una localización única
2
Internacionalización de las Interfaces
Niveles de Internacionalización y
Localización
Nivel1
No hacer localización
Nivel2
Localización mínima
Nivel3
Traducción ayuda en línea, tutoriales,…
Nivel4
Cubrir necesidades de hardware específicas de una región
Nivel5
Internacionalización y localización completa
Modelo de Localización
Bloque de código
+ =
Componentes Componentes
Producto
de lenguaje de de la
localizado
la Interfaz aplicación
Bloque de datos
Para crear una versión local se cambia
únicamente el bloque de datos
3
Internacionalización de las Interfaces
Modelo de Localización
Bloque de Datos
Contiene datos pero no código
Contiene cadenas de caracteres y gráficos
utilizados en la interfaz de usuario
Contiene elementos específicos de diferentes
países
Modelo de Localización(II)
Bloque de Código
Contiene código pero no datos
Contiene código de aplicación que se ejecuta para
todos los países y lenguas
4
Internacionalización de las Interfaces
Ventajas de hacer Aplicaciones
Internacionales
Productos pueden ser puestos en el mercado más
fácilmente
Especificación Mundial
5
Internacionalización de las Interfaces
Elementos Específicos de la
Localización
Calendarios
Gregoriano, budista, chino, hebreo
Diferentes formatos en el gregoriano
aa/mm/dd
aaddd
aaaa/mm/dd
dd/mm/aa
mm/dd/aa
Elementos Específicos de la
Localización (II)
Formatos de Fecha
19 de abril de 1970 ----------- España
1/19/70 ----------- Reino Unido
19/4/70 ----------- Dinamarca
1970-04-19 ----------- Suecia
6
Internacionalización de las Interfaces
Elementos Específicos de la
Localización (III)
Formatos Monetarios
USA --------------- $1,234.56
Noruega --------------- Kr1.234,56
Suiza --------------- sFr1234,56
Alemania --------------- 1.234,56DM
Elementos Específicos de la
Localización (IV)
Tiempo Horario
USA --------------- 8:32
Canadá --------------- 20:32
Suiza --------------- 20,32,00
Alemania --------------- 20.32 Uhr
Noruega --------------- KI 20.32
7
Internacionalización de las Interfaces
Elementos Específicos de la
Localización (V)
Números y Símbolos numéricos
EEUU
Billón, uno seguido de nueve ceros
La coma separa miles
América Latina y Europa
Billón, uno seguido de doce ceros
La coma separa decimales
Unidades de medida
La mayoría sistema métrico decimal (Km, cm,...)
Temperatura
Celsius (mayoría) pero también se emplea Farenheit
Elementos Específicos de la
Localización (VI)
Tamaños de papel
Mayoría: DIN A-3, DIN A-4
EEUU: legal, letter, ledger
8
Internacionalización de las Interfaces
Factores a Considerar en la
Localización
Mensajes
Ej. Kit de desarrollo de Microsoft Windows recomienda reservar
200% de espacio extra si el original contiene de 1 a 10 caracteres ingleses
100% cuando en el original hay de 10 a 20 caracteres
30% a partir de 71 caracteres
Gramática y sintaxis
El orden de las palabras puede ser totalmente diferente
Algunas lenguajes tienen género para nombres y adjetivos
Iconos
Símbolos aceptados internacionalmente
Hay que evitar bitmaps con texto
Escrituras
9
Internacionalización de las Interfaces
Escrituras (II)
Escrituras Occidentales
Son fonéticas
Se leen de izquierda a derecha en una línea
horizontal
Utilizan letras mayúsculas y minúsculas diferentes
Utilizan numeración arábiga 0,1,2,3,4,5
Son
Latín
Griego
Cirílico
10
Internacionalización de las Interfaces
Escrituras Latina
Es la más ampliamente utilizada hoy en día.
Es empleada por la mayoría de las naciones europeas, algunas
asiáticas, casi todas las africanas y todas las naciones de América
y Oceanía para escribir sus lenguajes.
Inicialmente tenía 24 letras incorporándose
después dos letras más la J y la W.
Algunas lenguas utilizan más letras y marcas
diacríticas. Danés y Noruego å, æ, ø
Finlandés ä, ö
Francés à, â, ç, ë, è, é, ê, ï, î, ô, œ,ü, ù, û
Alemán ä, ö, ü, ß
Italiano à, è, é, ì, ò, ù
Portugués ã, á, â, Ç, è, é, ê, í, ò, ó, ô, õ, ü, ú
Castellano á, é, í, ó, ú, ñ
Sueco å, ä, ö
Martínez & Cueva Interacción Persona Ordenador
Otras Escrituras
Griego
El griego utiliza el sistema de escritura de la antigua Grecia
aunque la versión moderna difiere mucho de la versión
antigua.
Consta de 24 letras y también utiliza marcas diacríticas.
Cirílico
También llamada escritura rusa.
Se usa en las lenguas de la Unión Soviética
Lejano Oriente
Basadas en los caracteres ideográficos chinos
Hoy en día se utilizan unos cuantos miles de caracteres.
11
Internacionalización de las Interfaces
Esquemas de Codificación
Cada tipo de escritura ha de ser representado en el
ordenador.
Los ordenadores trabajan con números (código binario)
El sistema binario permite representar números enteros,
reales, caracteres y valores lógicos.
Esta representación es un esquema de codificación.
El principal problema radica en la utilización de un
número de bits limitado para llevar a cabo estas
representaciones.
12
Internacionalización de las Interfaces
Unicode
Los conjuntos de caracteres utilizados para
programar difieren según el sistema operativo
y el lenguaje empleado.
Unicode proporciona un código único para
cada carácter, sin importar la plataforma, sin
importar el software, sin importar el idioma.
Líderes de la industria como Apple, HP, IBM,
JustSystem, Microsoft, Oracle, SAP, Sun,
Sybase, Unisys,... lo han adoptado.
Unicode (II)
La idea inicial era utilizar un código de 16 bits para
representar 65000 caracteres.
Actualmente Unicode soporta tres formatos de
representación con un conjunto de caracteres comunes
pero capaces de representar millones de caracteres:
UTF-8
UTF-16
UTF-32
http://www.unicode.org/
The Unicode Consortium: The Unicode Standard, Version 3.0
Reading,MA, Addison-Wesley Developers Press, 2000
13
Internacionalización de las Interfaces
Unicode (III)
UTF (Unicode Transformation Format) es un algoritmo
de traducción desde cada valor escalar Unicode a una
secuencia de bytes única.
UTF-8, utilizado por HTML; permite transformar todos los
códigos Unicode en una secuencia de bytes de longitud
variable.
UTF-16 permite que todos los caracteres utilizados más
frecuentemente se codifiquen en un solo código empleando el
resto parejas.
UTF-32 codifica directamente todos los caracteres Unicode.
Unicode (IV)
Para escribir una página web que emplee varios
idiomas sólo es necesario emplear un editor
Unicode para generar un fichero que emplee el
formato UTF-8.
Para un documento HTML se debe indicar al
navegador que se está empleando UTF-8:
<meta http-equiv=“Content-Type” content=“text/html”; charset=utf-8”>
14
Internacionalización de las Interfaces
Ejemplo:
Internacionalización en Java
n Clases implicadas en la internacionalización
n ResourceBundle
n Locale
n Características
n Ejemplo
15
Internacionalización de las Interfaces
Locale localizacion;
localizacion = new Locale (“es”, “ES”);
idioma país
16
Internacionalización de las Interfaces
Clases Java para
Internacionalización (II)
Clase ResourceBundle
Contiene objetos específicos a la localización
Tiene dos subclases:
PropertyResourceBundle
ListResourceBundle
Ejemplo:
ResourceBundle datos;
...
datos = ResourceBundle.getBundle(“Recursos”, localizacion);
Características
Hay objetos cuyo formato de representación varía con
la localización pero el objeto mismo no lo hace.
Números
Fechas
Horas
Monedas
No se almacenan en un ResourceBundle . Se
formatean con clases sensibles a la localización. Ej.
NumberFormat
17
Internacionalización de las Interfaces
Ejemplo
import java.util.*;
import java.text.*;
....
Formato = NumberFormat.getNumberInstance(localizacion);
cantidadString = Formato.format(cantidad);
System.out.println(cantidadString+" "+localizacion.toString())
Características (II)
Hay objetos cuyo contenido varía con la localización
String
Image
Color
AudioClip
Son almacenados en un
- PropertyResourceBundle
ResourceBundle
- ListResourceBundle
18
Internacionalización de las Interfaces
Clase ResourceBundle
PropertyResourceBundle
Ejemplo
import java.util.*;
...
Locale localizacion;
ResourceBundle mensajes;
...
idioma = new String("es");
pais = new String("ES");
System.out.println(mensajes.getString("cadena1"));
System.out.println(mensajes.getString("cadena2"));
System.out.println(mensajes.getString("cadena3"));
19
Internacionalización de las Interfaces
Fichero de Propiedades
// Contenido del fichero MisDatos_es_ES.properties
Clase ResourceBundle
ListResourceBundle
20
Internacionalización de las Interfaces
Ejemplo
import java.util.*;
...
21
Internacionalización de las Interfaces
Bibliografía
Global Interface Design: a Guide to Designing International User Interfaces
T. Fernández. Academic Press, 1995
22