Source

PensarEnC++ / TRADUCCION

The branch 'PensarEnC++' does not exist.
-*- coding: utf-8 -*-

- Gerundios
   Según dicen los filólogos el gerundio anglosajón debe
   traducirse normalmente por otra forma verbal. Así "Making & Using
   Objects" se traduciría por "Creación y uso de objetos" y no por
   "Creando y usando objetos". Esto nos lleva a cambiar el título que
   sería "Pensar en C++" o "Piensa en C++" pero no "Pensando en
   C++".


- Pasiva
   Muy común en textos ingleses pero poco natural en castellano.

   En cualquier caso es aconsejable leer la guía de estilo que hay en
   misc/guiaestilo.html. Respetar en especial el uso de la
   tercera persona del singular para dirigirse al lector.


- Código fuente
   En el texto traducido sólo se escriben los framentos de código, LOS
   LISTADOS DE CÓDIGO QUE CORRESPONDEN A FICHEROS COMPLETOS (los que
   empiezan con //:), _NO_ HAY QUE PASARLOS, deben incluirse con XInclude,
   tal como se hace en "src/Capítulo08.sgml".

   Los fragmentos de código fuente que aparecen en el texto NO se
   traducen NI se les da formato DocBook. Tampoco se traducen
   identificadores de clases o variables que aparezcan en el texto, y se
   refieran a fragmentos o listados de código.

   Como mucho traduciremos (en un futuro) los comentarios, pero NO los
   nombres de las variables, ficheros o cualquier elemento que pueda
   afectar a la compilación.
   Motivos:
    - Los ficheros fuente de C++ que se distribuyen con el libro no serían
      idénticos a los listados que aparecen en el texto.
    - La traducción podría introducir errores de muy difícil localización
    - Es la misma determinación que han tomado los traductores del clásico
      "El lenguaje de programación C++" 3ª edición (eso ya es una garantía :-)
    - Es un coñazo

   Tampoco se traducen los nombres de clases, variables y funciones, que
   aparecen en el texto y hagan referencia a los listados y ejemplos.

   Todo el código fuente utiliza una indentación de dos espacios para
   los bloques anidados, que corresponde con la de los listados adjuntos
   al libro.


- Respetar (no traducir) los términos con significado propio.

  Es decir, no debe traducir "bool" por "booleano" y "const" por
  "constante", ya que ni "bool" ni "const" existen en inglés. El autor
  las utiliza para hacer enfásis en la semántica de las palabras
  reservadas (de hecho, suelen aparecen en negrita en el texto
  original).  Por ejemplo, la frase "Produce bool results" debería
  traducirse como "Produce resultados bool" o quizá "Produce
  resultados tipo bool" porque esa es la intención del autor. Nosotros
  no escribimos el libro, sólo lo traducimos.


- Gráficos
   En los gráficos, esquemas y dibujos se traducen las partes que no tengan
   relación directa con algún fragmento de código. Es decir, si en un esquema
   aparece "class Wind" (que se refiere a un listado de código anexo) deberá
   traducirse como "clase Wind" para que siga siendo coherente con el
   listado y con el texto.

   Todos los gráficos se realizarán en SVG, por varias razones:
   - Se puede convertir fácilmente a otros formatos
   - Es un estándar de la W3C y muchos navegadores lo soportan ya nativamente
     o lo soportarán próximamente.
   - Es texto, lo que permite llevar un control de versiones con CVS
     gestinando conflictos si hay modificaciones incompatibles.
   - Es XML, de modo que se alinea con el resto del proyecto.
   - Existe un proyecto para utilizar SVG como un tipo de <imageobject>,
     lo que convierte a SVG en el formato natural para gráficos en DocBook.
     Ver http://docbook.org/specs/wd-docbook-svg-1.1CR1.html

   Aconsejo utilizar "inkscape" para editar SVG.



GLOSARIO,
- SP: consultado en la lista "spanglish"
- ST: usado en la traducción de "El lenguaje de programación C++",
      Bjarne Stroustrup, 3ª edición
--------------------------------------------------
aggregate            -> agregado
allocate a object    -> alojar un objeto
allocate storage     -> asignar, reservar espacio [de almacenamiento,memoria]
approach	     -> enfoque, propuesta
archive              -> archivo
bitwise              -> a nivel de bits [ST]
builtin-types	     -> tipos predefinidos, tipos del lenguaje
cast 		     -> molde [ST]
casting		     -> moldear, moldeado
cleanup 	     -> limpieza
constness 	     -> constancia [SP][ST]
copy constructor     -> constructor de copia [ST]
curly braces 	     -> llaves
dereference          -> indirección, desreferenciar[ST]
downcast             -> molde hacia abajo [ST]
early binding 	     -> ligadura temprana o estática
feature		     -> capacidad, cualidad
file                 -> fichero
flavor 		     -> modalidad
forward declaration  -> declaración adelantada
hack  		     -> truco [SP]
handler 	     -> manejador
header file    	     -> cabecera o fichero de cabecera [ST]
heap 		     -> montículo
heap compaction      -> defragmentación del montículo
heap compactor	     -> defragmentador del montículo
idiom                -> modismo
include guards       -> guardas de inclusión [ST], centinelas de inclusión?
initialize 	     -> inicializar
keyword 	     -> palabra reservada (NO clave)
late binding 	     -> ligadura tardía o dinámica
linker		     -> enlazador
linking		     -> enlazado
memory chunks 	     -> trozos de memoria
name clashes 	     -> conflicto entre nombres
name space 	     -> espacio de nombres [ST]
object file 	     -> fichero objeto
operator overloading -> sobrecarga de operadores
placeholder(342)     -> (de) relleno [SP]
pointer 	     -> puntero (no apuntador)
pop 		     -> sacar (des-apilar)
profiles	     -> perfilador
provide		     -> proporcionar
push 		     -> meter (apilar)
scope 		     -> ámbito, alcance
scope resolution operator -> operador de resolución de ámbito
stack 		     -> pila
template             -> plantilla [ST]
temporary object     -> objeto temporal [ST]
throw an exception   -> levantar o lanzar una excepción
translation unit     -> unidad de traducción
unary                -> monario [ST]
upcast               -> molde hacia arriba [ST]


Por consultar
-------------

- array
- binding (como en "python bindings")
- frontend
- override		-> anular, invalidar, sobreescribir, sobrecargar
- script
- stringizing	-> convertir a cadena
- type-safe
- underscore	-> guión bajo, subrayado


No convencen:
---------------
- librarian           -> bibliotecario



-------------------------------------
Terminos a comprobar en todo el texto
-------------------------------------
palabra clave -> palabra reservada
método: avisar la primera vez que aparezca que se usará
indistintamente "función miembro" y "método" aunque la segunda es la
forma preferida. En el caso de las variables se utilizará siempre
"atributo" y nunca "dato miembro"