Generalmente he venido utilizando el español en los proyectos que he realizado y en algunos que aún tengo entre manos. Me estoy refiriendo a la propia codificación, es decir, a llamar a nuestras unidades "UfrmPrincipal.pas" o "UfrmMain.pas", y así con todo lo demás.
Creo que es mi falta de conocimientos de inglés lo que me impide realizar el desarrollo de mis programas en inglés. Incluso más allá de la codificación, partir del inglés también en la interfaz del programa, por ejemplo, y traducir a otros lenguajes partiendo del inglés.
Pero tal vez sean cosas que no deba mezclar ahora mismo. Yo quiero referirme al código fuente, al nombre de identificadores, constantes, funciones, procedimientos, tipos, etc., etc., etc. Y creo que el inglés puede resultar más útil que el español.
Para empezar, lo que envuelve a nuestro código (palabras reservadas, tipos ya definidios, etc.) está en inglés. De modo que si nosotros metemos por medio el español estamos haciendo eso, justamente, mezclar dos lenguajes, con las dificultades de legibilidad que esto conlleva.
La comodidad tampoco hay que olvidarla. El inglés parece más indicado para según que cosas. Pondré como ejemplo los conocidos "Set" y "Get", cuando escribimos clases. Parece evidente que algo como esto:
type TMyClass = class(TObject) private function GetValue(): integer; procedure SetValue(value: integer); end;
Se ve mejor (en mi opinión) que algo como esto:
type TMiClase = class(TObject) private function ObtenerValor(): integer; procedure EstablecerValor(valor: integer); end;
Pero podría poner algunos otros ejemplos, que ahora mismo no me vienen a la cabeza, pero, que seguro que me he topado más de una vez, y tú también habrás visto. Personalmente, a veces encuentro "mejores" palabras en inglés que en español.
En el ejemplo de arriba, sin ir más lejos. Dudo entre "EstablecerValor()" y "FijarValor()". Ambas podrían valer, pero habría que tener claro cuál utilizar... para ayudarnos a nosotros y para ayudar a quienes pudieran llegar a leer nuestro código fuente.
Mi nivel de inglés es bastante bajo. Comprendo lo que leo, básicamente, sobre todo si lo que leo son tecnicismos, en fin, si se trata del mundo de la programación. Pero no lo escribo y no soy capaz de entenderlo si me hablan en él.
Sin embargo... qué error, ¿verdad? Pareciera que el inglés es algo absolutamente fundamental en este mundo de la programación, o, cuando menos, te abre unas posibilidades tremendas. Y pasará igual en otros ámbitos, supongo.
Pienso en un proyecto de código abierto que comparta su código, que lo ponga a la vista de quien quiera echar un vistazo. Pienso que si este se encuentra con código "en inglés" hay muchas más posibilidades de que se plantee colaborar, aportar algo, ver algo que nosotros no vimos.
Ahora bien, responde bandido, ¿tú cómo codificas tus programas? ¿En español? ¿En inglés? ¿En otro lenguaje? ¿En el que "mejor te parece" en un momento dado? ¿Siempre en el mismo?
Publicada el Jueves, 20/9/2007 por David Esperalta
Suscribirse a esta entrada - URL para Trackbacks
Gg... en el otro comentario se me olvidó mencionar que también me gusta la temática de tu bitácora porque veo que compartimos muchas inquietudes y «tribulaciones» ^^!
Por ejemplo ésta, en la que me ocurre exactamente igual que a ti. Me sorprendo codificando nombres de variables, funciones, métodos y objetos en inglés!... y me digo, seré gilipollas. Pero es que es cierto, cuando te haces a las sintaxis de programación piensas ya en inglés... y no comentas el código en inglés casi de milagro también, es una tentación arrebatadora ggg.
Y, ggg, para rematar, también son muchas las ocasiones en las que me digo eso mismo: estar limitado por el idioma afecta profundamente al conocimiento de sintaxis en lenguajes de programación que, como sabemos, se escriben en inglés.
Al principio, cuando empiezas y quizá también no sabes nada de inglés, por ejemplo puedes ver (php): mysql_fetch_rows() y te dices: joder, mysql_dame_filas(), no me extraña que a los guiris les cueste menos! :D
Y al final, cuando pasan los años, pues nada, tú mismo piensas como fetch_data, populate_data, o los mismos casos get o set, getters y setters ^.^ , que comentas. Y en el fondo, pues es bueno además de que nos revaloriza como programadores frente al mundo anglosajón. No es una defensa patria, es una realidad tanto para franceses, italianos, japoneses... por cierto, los japoneses sí que programan en japonés, ¿verdad? ¬¬
Un saludo.
Je je je... espero que muchas de mis tribulaciones no te parezcan desvaríos al fin y al cabo. ;) Sea como sea coincido contigo en lo del inglés para programar. Hasta el punto de que tengo cierto proyecto "en marcha" que está codificado en español, y que sólo por esto me tiene algo parado, puesto que preferiría que lo estuviera en inglés y soy consciente de que no es posible cambiar a estas alturas.
Desde hace tiempo que programo en inglés, y que hasta comento en inglés, ¡y eso que yo no he aprendido inglés sino por mí mismo! Lo que quiere decir que este es más bien escaso, cuando no malísimo, y que debo expresarme en inglés como los indios de las películas. Sin embargo sigo prefiriéndolo así, porque hasta de esta manera es más sencillo para mí. Prefiero el "GetData()" al "TraeDatos()", "CogeDatos()" o cualquier otra cosa parecida.
Gracias por tu comentario Covi. ;)