Está en la página 1de 9

Taller de Lectura

Nombres con sentido

Autor: Pablo Valeria Morales.

Fecha: 28 de Noviembre, 2017.

Asignatura: Programacin.

Profesor: Samuel Seplveda Cuevas.

Grupo: Muos, Valeria, Zuiga.


ndice

Pg.

Introduccin al tema...3

Objetivos.4

Desarrollo del anlisis realizado, respuestas a las preguntas


planteadas..5,6,7 y 8

Comentarios/Discusin/Aportes personales..10

Conclusiones..10

Bibliografa.....10
i. Introduccin al tema
En los software los nombres aparecen recurrentemente en variables,
funciones, argumentos, clases, paquetes, archivos, directorios, etc. Por esta razn hay
ciertas reglas bsicas para crear nombres correctos.

A los inicios de las computadoras usar varios caracteres para los nombres se
habra considerado un mal gasto de memoria y ciclos de CPU. Hoy en da no es as,
y el valor del cdigo se encuentra en su fcil lectura y entendimiento, adems, que
sea mejorable y reutilizable.

A continuacin a raz de las siguientes cuatro preguntas:

a. Mencione 3 ejemplos a partir de lo hecho en su proyecto grupal, que


refleje las malas prcticas mencionadas en el texto (nombre de variables,
mtodos o clases, etc...). Implemente las correcciones que correspondan y
justifique su respuesta acorde al texto.

b. De las prcticas o situaciones mencionadas en el texto, seleccione las 3 que


Uds. consideren ms relevantes para calidad de sus proyectos. Justifique su
respuesta.

c. Qu relacin existe entre la calidad del cdigo fuente y las prcticas o


recomendaciones que menciona el texto?

d. Complemente su respuesta con un mapa conceptual sobre el texto, que


muestre los conceptos principales, sus caractersticas y relaciones.

Se proceder en las pginas siguientes a enumerar los objetivos del informe,


desarrollar el anlisis del texto Nombres con sentido de Tim Ottinger,respondiendo a las
preguntas, se realizan comentarios, aportes personales y posteriormente lo que se concluye.

El proyecto grupal consiste en un sistema de mensajera entre padres y apoderados


de un curso especfico programado en Java llamada PaPapp, el cual se desarrolla como
requerimiento de la parte prctica del ramo de Programacin.
ii. Objetivos
1. Implementar 3 correcciones al proyecto grupal a partir de malas prcticas
anteriormente aplicadas.
2. Reconocer 3 prcticas ms relevantes consideradas para el proyecto grupal.
3. Comprender en que consiste la calidad del cdigo en relacin con las buenas
prcticas de los nombres.
4. Comprender la relacin de los conceptos principales y secundarios.
iii. Desarrollo del anlisis realizado, respuestas a las preguntas
planteadas
1. Implementacin de correcciones en Java
i. En el siguiente mtodo se aprecian 2 malas prcticas.

En 1) crear un objeto de nombre v, en primer lugar no informa de nada


y por otro lado hay que evitar las abreviaturas, adems, se debe evitar
las asignaciones mentales ya que v para el programador significa
ventana pero para otra persona puede significar cualquier cosa. Se
sustituye por ventanaIcono ya que informa que es una ventana y que
tiene que ver con un Icono lo cual tiene relacin con un sistema de
mensajera.

En 2) al igual que el caso anterior el objeto de nombre l no informa


nada, por otro lado es una abreviatura lo cual hay que evitar adems,
es una asignacin mental cosa que tambin hay que evitar y otro
suceso relacionado con la desinformacin es el uso de carcter l
minscula ya que se confunde con un nmero uno (1) cosa que
tambin se debe evitar. Se sustituye por labelIcono ya que rpidamente
se hace la relacin de un label con un Icono.
3) El mtodo salvaImagenEnFichero, no entrega informacin ya que una palabra tcnica no es y lo
que reamente hace el mtodo es guardar una imagen en fichero, por lo tanto se redefine el mtodo
como guardarImagenEnFichero.

4) El argumento unaParte no dice nada, una parte puede ser de cualquier cosa pero en realidad, el
argumento se refiere a un fragmento de mensaje por lo tanto se remplaza por fragmentoMensaje.

5) La variable entera ledos no dice nada y tampoco entrega informacin solo dice ledos sin nada
ms, se puede suponer que se refiere a mensajes ledos si no tenemos conocimiento del cdigo
pero puede que no lo sea, por lo tanto se remplaza por mensajes Ledos.
2. Practicas relevantes para el proyecto grupal:
i. Usar nombres que revelen las intenciones.

Los nombres de los mtodos y en las variables deben responder que es


lo que hacen, como se usan y para que se usan, por lo tanto si no se
revelan las verdaderas intenciones en el nombre significa que ser
difcil, incluso para los integrantes del grupo el uso y el entendimiento
de mtodos y variables, por otro lado ser ms negativo para alguien
externo al grupo.

ii. Evitar la desinformacin.

Las pistas falsas son la clave para caer en un error, se deben evitar
palabras que se alejen del significado verdadero por el cual se pretende
usar un nombre, por ejemplo si listaMensajes no es realmente una
lista. Otro ejemplo es el uso de abreviaciones ya que si aparece una
variable l para referirse a una lista de mensajes es ms correcto utilizar
listaMensajes. Por otra parte hay que evitar lo nombres con
variaciones mnimas entre uno y otro siempre que no sea estrictamente
necesario.

iii. Evitar asignaciones mentales.

Muchas veces se incurre en nombrar elementos con una asignacin


mental que para el que programa es fcil de reconocer, por ms simple
que parezca no lo es ya que los nombres deben ser explcitos y aunque
el que escribe el cdigo entienda primero debe procurar en crear un
cdigo que otros puedan entender.

3. La calidad de un cdigo no va en que solo haga el trabajo que se requiere, ms


bien que sea lo ms entendible posible, que se pueda reutilizar cdigo y que
se puedan realizar implementaciones. Para que el cdigo cumpla con los
requisitos ya mencionados es necesario incurrir en las buenas prcticas de
programacin como evitar la desinformacin, realizar distincin con sentido,
usar nombres que se puedan pronunciar, usar nombres que se puedan buscar,
evitar codificaciones, no usar prefijos de miembros, evitar asignaciones
mentales, nombrar las clases con nombres o frases pero nunca un verbo y los
mtodos nombrarlos como verbos.
4. Mapa conceptual:
iv. Comentarios/Discusin/Aportes personales
El autor: Como programador en formacin debo reconocer que hasta antes de leer el
texto comet muchos errores con respecto a nombrar elementos como clases,
mtodos, variables ya que siempre me interese en que el programa hiciera el trabajo
que deba realizar, pero luego del anlisis del texto y reflexin me doy cuenta que un
cdigo de calidad no es solo eso sino que sea entendible y trascedente en el tiempo y
a la hora de hacer trabajos escribir nombres con sentido nos ayuda a comprender
nuestras propias intenciones del cdigo dentro del grupo y as ser ms fcil
divulgarlo al resto.

Martin Fowler (Walsall, 1963) - ingeniero de software britnico dijo:

Cualquier tonto puede escribir cdigo que una computadora puede entender. Los
buenos programadores escriben cdigo que los humanos pueden entender.

v. Conclusiones
Elegir un nombre para una variable, clase, mtodos, etc. no es una obligacin pero
si un deber para hacer programas de calidad.

Los nombres con sentido ayudan a personas externas al cdigo pero tambin a los
desarrolladores para entenderse como equipo.

Muchas veces se cae en el error de las abreviaciones y asignaciones mentales que


para el que programa tiene sentido pero no para el que puede leer el cdigo ms
adelante.

Se debe asegurar que un nombre diga lo que significa y signifique lo que dice.

Siempre se debe recordar que si se tiene que leer el cdigo para entender un
nombre, entonces el nombre elegido es malo

vi. Referencias bibliogrficas:


APUNTE07-NombresConSentido.pdf Tim Ottinger.

http://campusvirtual.ufro.cl/mod/folder/view.php?id=442459