4

Para esta semana voy a ofrecer un texto cuyo contexto es más moderno: los principios SOLID de programación. Según la Wikipedia:

SOLID (Single responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion) es un acrónimo mnemónico introducido por Robert C. Martin a comienzos de la década del 2000 que representa cinco principios básicos de la programación orientada a objetos y el diseño. Cuando estos principios se aplican en conjunto es más probable que un desarrollador cree un sistema que sea fácil de mantener y ampliar con el tiempo.

El primero de los principios, el de única responsabilidad, afirma que

[...] cada módulo o clase debe tener responsabilidad sobre una sola parte de la funcionalidad proporcionada por el software y esta responsabilidad debe estar encapsulada en su totalidad por la clase.

En la Wikipedia en inglés viene un ejemplo, que es el texto cuya traducción se propone (número original de caracteres: 379):

Consider a module that compiles and prints a report. Imagine such a module can be changed for two reasons. First, the content of the report could change. Second, the format of the report could change. These two things change for very different causes; one substantive, and one cosmetic. The single responsibility principle says that these two aspects of the problem are really two separate responsibilities, and should therefore be in separate classes or modules.

Traducción propuesta oculta para no condicionar (410 caracteres, ratio 1.08):

Consideremos un módulo que compila e imprime un informe. Imaginemos que dicho módulo puede cambiar por dos motivos. El primero, que puede cambiar el contenido del informe. El segundo, que puede cambiar el formato del informe. Estos dos cambios se dan por causas muy diferentes: una sustancial y otra cosmética. El principio de única responsabilidad dice que estos dos aspectos del problema en realidad son dos responsabilidades diferentes, y por tanto deberían estar en clases o módulos separados.

¡Esto es translation-golf! Sigue las normas, pásatelo bien, aprende, y recuerda: ¡la traducción con menos caracteres que respete el original, gana!

2
  • 1
    En "chileno": 216 caracteres. Pero tuve problemas con el diccionario... Tenís un módulo que compila y tira un informe. Cacha que el informe cambia, una, por contenido, otra, por forma. O sea por una güevá importante o por una pura güevá. Según el "principio de única responsabilidad", son güevás distintas, así que van en módulos o clases aparte.
    – Rodrigo
    Apr 7, 2017 at 17:12
  • @Rodrigo ¡no había visto esta traducción! ¡Es buenísima! Si eres capaz de argumentarla (las palabras vienen en el DLE o en el diccionario de americanismos) te la admito como respuesta. :-)
    – Charlie
    Apr 10, 2017 at 6:20

5 Answers 5

4

205 caracteres

Considere un módulo que genera reportes. Puede cambiar el contenido o el formato, que son consideraciones distintas, una sustantiva, y la otra cosmética. De acuerdo al principio de responsabilidad única, estas se deben plasmar en módulos separados.

El tema del párrafo es el principio de responsabilidad única, y el ejemplo del reporte lo ejemplifica, ya que el formato y el contenido son aspectos o responsabilidades ortogonales que se deben manejar de manera separada en una aplicación correcta del diseño orientado a objetos. La expresión "genera reportes" es equivalente en el argot de tecnología de información (por lo menos en México) a la expresión "compila e imprime reportes."

3
  • 1
    ¡Gracias por participar! Por favor, añade el número de caracteres, y dado que te tomas bastantes licencias en la traducción (como eliminar frases, palabras y verbos clave), debes explicar los motivos de tales licencias. De lo contrario no podremos darla por buena.
    – Charlie
    Apr 6, 2017 at 16:46
  • Veo en el diccionario que "generar" significa lo mismo que "producir". Se puede considerar que esa "producción" incluye tanto la compilación como la impresión, así que la daré por buena. Del mismo modo, "clase" y "módulo" se pueden considerar sinónimos. Me chirría un poco la redacción general, que me da la sensación de que está demasiado sintetizada y me suena rara, pero voy a dar la traducción por buena.
    – Charlie
    Apr 10, 2017 at 6:36
  • 2
    ¡Eres el ganador de esta semana! Puedes plantear una nueva pregunta de translation-golf durante las próximas 48 horas, pasado ese tiempo cualquiera podrá plantear una nueva pregunta.
    – Charlie
    Apr 10, 2017 at 8:08
2

223 caracteres

Toma un módulo que compila e imprime reportes: puede cambiar porque cambia su contenido (cambio sustantivo) o su formato (cosmético). El principio de responsabilidad única dice que, al ser estas responsabilidades diferentes, deberían estar en clases o módulos distintos.

Me tomé varias licencias (sobretodo haciendo desaparecer una oración completa) pero la esencia y la semántica se conserva.

5
  • Es esa frase Imagine such a module can be changed for two reasons.?
    – Diego
    Apr 4, 2017 at 14:32
  • No entiendo la pregunta. Omito el hecho de que son dos pero los enumero (con lo cual queda claro).
    – Laski
    Apr 5, 2017 at 1:08
  • 1
    Dices que te has tomado la licencia de suprimir una frase entera. Solo quería verificar cuál era. Creo que otras respuestas han hecho lo mismo. No es una recriminación ni nada parecido y aparte está en las reglas que el OP es el que juzga el mérito de la traducción. Simplemente quería verificar para que fuese más fácil comparar con el original.
    – Diego
    Apr 5, 2017 at 1:37
  • 1
    Cuando el texto a traducir es largo, existe la probabilidad de que existan frases enteras que se puedan omitir al integrar lo que dicen en otras frases. En este caso, si enumeras que puede cambiar su contenido o su formato ya estás diciendo cuáles son esas dos razones. En todo caso, se pide que cuando se toman licencias se explique el motivo de las mismas en la respuesta, por si quieres ampliar la tuya con este dato. Cc: @Diego
    – Charlie
    Apr 5, 2017 at 9:15
  • Como aspirante al trono, avisarte de que he dado por buena la traducción de ixi. Puedes usar consideraciones similares para mejorar tu traducción.
    – Charlie
    Apr 10, 2017 at 6:42
2

283 270 222 letras

Dado un módulo que compila e imprime un informe, puede cambiar su contenido o su formato, por razones de peso o cosméticas respectivamente. El principio de única responsabilidad las llama responsabilidades distintas, luego pertenecerán a distintas clases o módulos.

Comentarios:

  • Utilizo 1º y 2º para primero y segundo. Me cargo la enumeración.
  • Dudé un poco en la primera parte respecto qué tipo usar, si subjuntivo (que compile e imprima) o indicativo (que compila e imprime, como uso finalmente). Como el número de caracteres es el mismo, no tiene afectación final.
  • Estoy pensando en hacer caer algún que (piensa se puede cambiar...), si bien puede sonar a texto "jurídico".

Evolución:

  • 222 letras: estilo mucho más directo, sin frases del tipo "esto ocurre..." o "según...".
10
  • Recuerda que, según las reglas, no se permiten las abreviaturas, por lo que 1.o y 2.o no son válidos.
    – Charlie
    Apr 3, 2017 at 10:07
  • @CarlosAlejo oh, se me pasó ese punto. Corregido (eliminado, vaya).
    – fedorqui
    Apr 3, 2017 at 10:15
  • Me imaginaba que llegarías a esa conclusión. Y te he quitado una letra que te sobraba en "responsabilildades". :-D
    – Charlie
    Apr 3, 2017 at 10:26
  • Veo que te has picado. :-D Estas primeras pruebas parecen apuntar a que, cuanto más largo es el texto original, más se convierte esto en un concurso de síntesis más que de traducción. Tal vez debamos probar con textos más cortos en el futuro, como de 200 caracteres o menos en el original, para hacer que la gente le dé más a las neuronas.
    – Charlie
    Apr 6, 2017 at 11:13
  • Tal cual, síntesis es la palabra. Lo interesante es encontrar un texto bastante poco "sintentizable" para que entre en juego la búsqueda de sinónimos y expresiones raras.
    – fedorqui
    Apr 6, 2017 at 11:25
2

283 caracteres

Dado un módulo que compila e imprime informes, téngase por razón para cambiarlo que variara el contenido o el formato de estos, por causa sustancial el uno y cosmética el otro. El principio de responsabilidad única dice que los dos aspectos supondrían, cada uno, una responsabilidad diferente; ergo, habrían de ocupar clases o módulos distintos.

1
  • 1
    Qué bueno el ergo
    – fedorqui
    Apr 4, 2017 at 6:18
2

256 characters

Un módulo que prepara e imprime un reporte puede variar ya sea por el contenido o bien el formato. En el primer caso, cambia la sustancia; en el segundo, lo cosmético. El principio de responsabilidad única dice que estos casos son responsabilidades diferentes; por tanto deben estar en diferentes clases o módulos.

Today I was aiming for clarity of exposition and secondarily conciseness, whereas last time I was more faithful to the original. This time I figured the important thing was the technical idea more than the style, vocabulary, etc.

Edit: I made some changes, partly based on feedback, partly on having digested the paragraph some more. I used an online character counting tool -- had to subtract out the white spaces -- and then tried the TextFX plugin for Notepad++; got the same number!

3
  • 1
    I count 281 characters. See the post in Meta Methods to easily count characters in a text.
    – fedorqui
    Apr 4, 2017 at 6:12
  • I fixed you character count, @fedorqui was right. Also, here you have some tips to improve your text and make it sound more Spanish-ish: change "sustanciosa" por "sustancial"; drop "la" in "de la responsablidad", and drop "dos" in "en dos clases" (you just need to say that they go in different classes, no need to say how many).
    – Charlie
    Apr 4, 2017 at 6:54
  • 1
    @fedorqui - Easily?! (Apparently I now have another thing to add to my list of things I'm not good at -- counting characters.) Apr 5, 2017 at 5:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.