Pages

Tuesday, March 7, 2017

Estas usando las propiedades de clases correctamente ?

Ultimamente estoy viendo mucho codigo escrito asi:




Tienes tus miembros privados, y creaste las propiedades publicas para ellos, Y estas feliz y sigues con tu vida. Pero te pregunto, hay algun problema en lo que vemos aqui ? Tomate un momento para pensarlo.

Veras, uno de los propositos de las propiedades es el de proteger los miembros privados. Pero si no hay anda de codigo en el getter o el setter de la propiedad, entonces no estamos protegiendo nada realmente, simplemente estamos pasando los valores al miembro privado tal como llegan.

Este es un error comun, creamos la clase e inmediatamente, casi inconsientemente, creamos las propiedades para nuestros miembros privados. Porque nos enseñaron asi o porque programamos como robots. No va a causar ninguna excepcion y ciertamente puedes usarlas sin problemas si tienes validaciones en alguna otra parte, Pero no estas aprovechando las ventajas de uno de los objetivos de las propiedades.


Ahora supongamos que nuestra variable 'age' (edad) tiene que tener un rango valido, O que para algunos reportes tienes que ver el valor 'Not Available' (No disponible) cuando una persona no tiene una direccion registrada. Podrias hacer esto:




Ahora Si!, realmente estamos usando las propiedades para algo significativo. Este es solo un pequeño ejemplo. Que piensas al respecto ? A mi ciertamente me dejo pensando.

Y eso, amigo mío, ¡es todo!






No comments:

Post a Comment