contenidos - cd universidad de oviedodi002.edv.uniovi.es/~cueva/asignaturas/doctorado/2004/6...2...
TRANSCRIPT
1
Martínez & Cueva Interacción Persona Ordenador
Contenidos1. Interacción Hombre-Máquina2. El Factor Humano3. Diseño Gráfico4. Estilos de Interacción5. Metáforas6. Internacionalización7. Soporte al Usuario8. Usabilidad Web9. Guías y Estándares
10. Accesibilidad 11. Trabajo cooperativo 12. Evaluación
Martínez & Cueva Interacción Persona Ordenador
6. Internacionalización
n Definiciónn 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
2
Martínez & Cueva Interacción Persona Ordenador
Introducción
Hace unos años el software se producía en un único lenguaje, normalmente inglés. Si una persona hablaba otro idioma, tenía que aceptar el programa como estaba.
Actualmente, debido sobre todo a los ordenadores personales, hanproliferado los usuarios con una formación muy diversa. Esto ha obligado a hacer las aplicaciones más usables y también, como una parte del proceso de usabilidad, a hacer las aplicaciones en las lenguas propias de los usuarios.
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Internacionalización - Localización
InternacionalizaciónProceso 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ónAdaptación de un producto software al lenguaje y a las convenciones locales y culturales de una región particularCada país tiene una localización única
Internacionalización de las Interfaces
3
Martínez & Cueva Interacción Persona Ordenador
Niveles de Internacionalización y Localización
Nivel1 No hacer localización
Nivel2 Localización mínima
Nivel3Traducción ayuda en línea, tutoriales,…
Nivel4Cubrir necesidades de hardware específicas de una región
Nivel5 Internacionalización y localización completa
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Modelo de Localización
Componentesde la
aplicación
Productolocalizado
Componentesde lenguaje de
la Interfaz + =
Para crear una versión local se cambia únicamente el bloque de datos
Internacionalización de las Interfaces
Bloque de datos
Bloque de código
4
Martínez & Cueva Interacción Persona Ordenador
Modelo de Localización
Bloque de Datos
Contiene datos pero no códigoContiene cadenas de caracteres y gráficos utilizados en la interfaz de usuarioContiene elementos específicos de diferentes países
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Modelo de Localización(II)
Bloque de Código
Contiene código pero no datosContiene código de aplicación que se ejecuta para todos los países y lenguas
Internacionalización de las Interfaces
5
Martínez & Cueva Interacción Persona Ordenador
Ventajas de hacer Aplicaciones Internacionales
Productos pueden ser puestos en el mercado más fácilmente
Se utilizan los recursos más eficientemente
Mantenimiento del código menos costoso
Crear versiones localizadas es más fácil y rápido
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Especificación Mundial
Elementos específicos de la localizaciónCalendarios, formatos de fechas, horas, etc.Formatos de números y monedasUnidades de medida
Características internacionales específicas de una versión
Adaptación a mercados específicosIconos de libros: se abren en la posición adecuadaAnimales sagrados, iconos con posiciones de manos,....
Internacionalización de las Interfaces
6
Martínez & Cueva Interacción Persona Ordenador
Elementos Específicos de la Localización
CalendariosGregoriano, budista, chino, hebreoDiferentes formatos en el gregoriano
aa/mm/ddaadddaaaa/mm/dddd/mm/aamm/dd/aa
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Elementos Específicos de la Localización (II)
Formatos de Fecha19 de abril de 1970 ----------- España1/19/70 ----------- Reino Unido19/4/70 ----------- Dinamarca1970-04-19 ----------- Suecia
Internacionalización de las Interfaces
7
Martínez & Cueva Interacción Persona Ordenador
Elementos Específicos de la Localización (III)
Formatos MonetariosUSA --------------- $1,234.56Noruega --------------- Kr1.234,56 Suiza --------------- sFr1234,56Alemania --------------- 1.234,56DM
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Elementos Específicos de la Localización (IV)
Tiempo HorarioUSA --------------- 8:32Canadá --------------- 20:32Suiza --------------- 20,32,00Alemania --------------- 20.32 UhrNoruega --------------- KI 20.32
Internacionalización de las Interfaces
8
Martínez & Cueva Interacción Persona Ordenador
Elementos Específicos de la Localización (V)
Números y Símbolos numéricosEEUU
Billón, uno seguido de nueve cerosLa coma separa miles
América Latina y EuropaBillón, uno seguido de doce cerosLa coma separa decimales
Unidades de medidaLa mayoría sistema métrico decimal (Km, cm,...)EEUU emplea la milla y la pulgada
TemperaturaCelsius (mayoría) pero también se emplea Farenheit
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Elementos Específicos de la Localización (VI)
Tamaños de papel
Mayoría: DIN A-3, DIN A-4
EEUU: legal, letter, ledger
Formato direcciones postales
Mayoría: nombre de la calle + número
EEUU: número + nombre de la calle
Signos de puntuaciónAlgunos símbolos no utilizados: ¿, ¡,...Griegos: signo de interrogación parecido al ;
ColoresOccidentales: rojo parar, verde proseguirConvención no válida en China
Traducción de IconosCubo de basura de Apple-> buzón postal para los ingles
Internacionalización de las Interfaces
9
Martínez & Cueva Interacción Persona Ordenador
Factores a Considerar en la Localización
MensajesEj. Kit de desarrollo de Microsoft Windows recomienda reservar
200% de espacio extra si el original contiene de 1 a 10 caracteres ingleses100% cuando en el original hay de 10 a 20 caracteres30% a partir de 71 caracteres
Gramática y sintaxisEl orden de las palabras puede ser totalmente diferenteAlgunas lenguajes tienen género para nombres y adjetivos
IconosSímbolos aceptados internacionalmenteHay que evitar bitmaps con texto
Diseño de los menús, Barras de Estado, Cajas de Diálogo
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Escrituras
Conjunto de letras que se utilizan para escribir una lengua
Se clasifican en :
Ideogramas. Tienen un significado especial pero no tienen relación con su pronunciación.
Escrituras Fonéticas. No tienen un significado especial pero representan determinados sonidos (Ej. Q).
Internacionalización de las Interfaces
10
Martínez & Cueva Interacción Persona Ordenador
Escrituras (II)
Los ideogramas y las escrituras fonéticas representan los sistemas de escritura en uso hoy en día.Los tres sistemas de escritura más importantes son:
OccidentalDe oriente medioDe lejano oriente
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Escrituras Occidentales
Son fonéticasSe leen de izquierda a derecha en una línea horizontalUtilizan letras mayúsculas y minúsculas diferentesUtilizan numeración arábiga 0,1,2,3,4,5Son
Latín GriegoCirílico
Internacionalización de las Interfaces
11
Martínez & Cueva Interacción Persona Ordenador
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 å, ä, ö
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Otras Escrituras
GriegoEl 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ílicoTambién llamada escritura rusa.Se usa en las lenguas de la Unión Soviética
Lejano OrienteBasadas en los caracteres ideográficos chinosHoy en día se utilizan unos cuantos miles de caracteres.
Internacionalización de las Interfaces
12
Martínez & Cueva Interacción Persona Ordenador
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.
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Esquemas de Codificación (II)
La representación del texto exige asignar un código que asocie a cada carácter un valor binario.Dicho código ha de ser conocido por todos los implicados en el intercambio de información.Esquemas habituales (8 bits) permiten representar 256 símbolos. Suficientes para el alfabeto latino pero no para los lenguajes ideográficos.
ASCIIEBCDIC
Internacionalización de las Interfaces
13
Martínez & Cueva Interacción Persona Ordenador
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.
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
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-8UTF-16UTF-32
http://www.unicode.org/The Unicode Consortium: The Unicode Standard, Version 3.0
Reading,MA, Addison-Wesley Developers Press, 2000
Internacionalización de las Interfaces
14
Martínez & Cueva Interacción Persona Ordenador
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.
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
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”>
Internacionalización de las Interfaces
15
Martínez & Cueva Interacción Persona Ordenador
Ejemplo:Internacionalización en Java
Internacionalización de las Interfaces
n Clases implicadas en la internacionalizaciónn ResourceBundlen Locale
n Características
n Ejemplo
Martínez & Cueva Interacción Persona Ordenador
Clase sin Internacionalizar
public class NoInternac{static public void main(String [] args){System.out.println(“Hola a todos”);System.out.println(“Mi nombre es Belén”);System.out.println(“Universidad de Oviedo”);
}}
Internacionalización de las Interfaces
16
Martínez & Cueva Interacción Persona Ordenador
Clase sin Internacionalizar (II)
public class NoInternac{static public void main(String [] args){
Double cantidad;cantidad = new Double(123.33);System.out.println(cantidad.toString());
}}
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Clases Java para Internacionalización
Clase LocaleIdentifica un idioma y un país concreto
http://www.ics.uci.edu/pub/ietf/http/related/iso639.txthttp://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html
Los objetos de esta clase son únicamente identificadores que se pasan a otras clases locale-sensitiveEjemplo:
Locale localizacion;localizacion = new Locale (“es”, “ES”);
idioma país
Internacionalización de las Interfaces
17
Martínez & Cueva Interacción Persona Ordenador
Clases Java para Internacionalización (II)
Clase ResourceBundleContiene objetos específicos a la localizaciónTiene dos subclases:
PropertyResourceBundleListResourceBundle
Ejemplo:
ResourceBundle datos;...
datos = ResourceBundle.getBundle(“Recursos”, localizacion);
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Características
Hay objetos cuyo formato de representación varía con la localización pero el objeto mismo no lo hace.
NúmerosFechasHorasMonedas
No se almacenan en un ResourceBundle . Se formatean con clases sensibles a la localización. Ej. NumberFormat
Internacionalización de las Interfaces
18
Martínez & Cueva Interacción Persona Ordenador
Ejemplo
import java.util.*;import java.text.*;....
localizacion = new Locale("en", "US");
Double cantidad = new Double(345678.246);NumberFormat Formato;String cantidadString;
Formato = NumberFormat.getNumberInstance(localizacion);cantidadString = Formato.format(cantidad);System.out.println(cantidadString+" "+localizacion.toString())
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Características (II)
Hay objetos cuyo contenido varía con la localizaciónStringImageColorAudioClip
Son almacenados en un
ResourceBundle- PropertyResourceBundle
- ListResourceBundle
Internacionalización de las Interfaces
19
Martínez & Cueva Interacción Persona Ordenador
Clase ResourceBundle
PropertyResourceBundle
Se basa en un fichero de propiedades (de texto)El fichero de propiedades no es parte de los fuentes JavaHabrá un fichero para cada localización :
NombreFichero_en_US.propertiesNombreFichero_es_ES.properties
Únicamente puede contener valores para objetos String
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Ejemplo import java.util.*;
...Locale localizacion;ResourceBundle mensajes;
...idioma = new String("es");pais = new String("ES");
localizacion = new Locale(idioma, pais);mensajes = ResourceBundle.getBundle("MisDatos",localizacion);
System.out.println(mensajes.getString("cadena1"));System.out.println(mensajes.getString("cadena2"));System.out.println(mensajes.getString("cadena3"));
Internacionalización de las Interfaces
20
Martínez & Cueva Interacción Persona Ordenador
Fichero de Propiedades // Contenido del fichero MisDatos_es_ES.properties
cadena1 = Hola a todoscadena2 = Mi nombre es Beléncadena3 = Universidad de Oviedo
//Contenido del fichero MisDatos_en_US.properties
cadena1 = Hello Everybody!cadena2 = My name is Beléncadena3 = University of Oviedo
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Clase ResourceBundle
ListResourceBundle
Se emplea para almacenar cualquier tipo de objetoPara soportar cualquier localización adicional es necesario crear otro fichero fuente y compilarlo (.class)
Internacionalización de las Interfaces
21
Martínez & Cueva Interacción Persona Ordenador
Ejemplo import java.util.*;...
Locale localizacion = new Locale("en", "US");ResourceBundle Datos= ResourceBundle.getBundle("Recursos", localizacion);
String nombre = Datos.getString("Nombre");System.out.println("Nombre = "+nombre);
Integer curso = (Integer) Datos.getObject("Curso");System.out.println("Curso = "+curso.toString());
Double nota = (Double) Datos.getObject("Nota");System.out.println("Nota = "+nota.toString());
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
Ejemplo Clase Localizada (II)
import java.util.*;
public class Recursos_es_ES extends ListResourceBundle{
public Object[][] getContents() { return contents;}private Object[][] contents ={{"Nombre",new String ("Ana Bel‚n")},{"Curso", new Integer(5)},{"Nota",new Double(4.24)},};
}
Internacionalización de las Interfaces
22
Martínez & Cueva Interacción Persona Ordenador
Ejemplo Clase Localizada (I)
import java.util.*;
public class Recursos_en_US extends ListResourceBundle{
public Object[][] getContents() { return contents;}private Object[][] contents ={{"Nombre",new String ("Bel‚n")},{"Curso", new Integer(3)},{"Nota",new Double (4.75)},};
}
Internacionalización de las Interfaces
Martínez & Cueva Interacción Persona Ordenador
BibliografíaGlobal Interface Design: a Guide to Designing International User InterfacesT. Fernández. Academic Press, 1995
International User InterfacesE. del Galdo y J. Nielsen. John Wiley & Sons, 1996
Internationalization: Developing Software for Global MarketsT.V. Luong y otros. John Wiley & Sons, 1995
Programming for the World: A Guide to InternacionalizationS. Martin O’Donnell. Prentice-Hall, 1994
Perspectives on Design and InternationalizationC.M Karat y J. Karat. Boletín de SIGCHI, Vol 28, 1996
ACM SIGCHI Internacionalización
http://www.acm.org/sigchi/intercultural
Internacionalización de las Interfaces