-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-03-21 a las 14:45 +0100, Roberto Antolín escribió:
Hay varias maneras de hacer que los mensajes salgan en varios idiomas. Una es tener un array de dos dimensiones: una el idioma, otra el mensaje. Con ... No me parece la mejor solución, la verdad.
Pero es la que genera código más eficiente. En pequeños proyectos de código cerrado y pocos idiomas (dos, pe) se usa.
Otra variación es usar no constantes o variables, sino funciones: se llama a ...
Hombre, siempre es mejor que la otra. En esta los desarrolladores tienen menos que ver con los mensajes.
Se puede hacer que no tengan que hacer nada, ni siquiera para añadir nuevos idiomas. Una ventaja respecto a gettext es que se pueden alterar los mensajes del idioma original sin anular los demás (errores ortográficos). Esa misma ventaja es un inconveniente de ambos métodos: si un mensaje se cambia demasiado las traducciones serán incorrectas, pero seguirán usandose sin que se enteren los traductores. Con gettext, se cambia una coma del mensaje original, y las traducciones desaparecen.
que es muy fácil de cambiar. El truco es que el índice ya no es un número, ¡sino el propio string! Es más pesado computacionalmente, pero se puede aplicar bien en un programa ya terminado. De ahí lo de "a posteriori".
Aunque sea "a posteriori" me parece la forma más "limpia" en el sentido que el desarrollador se desentiende de los mensajes y los traductores del codigo.
Sí, es una forma muy limpia, aunque pesada computacionalmente, pienso. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFGAU5ttTMYHG2NR9URAsRCAKCMlXWYTAwts1wyTazwshOJ2Skt1QCfeHRX iyR5Tug7A7xw6/olkXQEBGw= =hY1K -----END PGP SIGNATURE-----