Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Visibilidad de objetos de una clase
Message
General information
Forum:
Visual FoxPro
Category:
Object Oriented Programming
Miscellaneous
Thread ID:
01125702
Message ID:
01127442
Views:
14
Hola Martín,

>Bueno, como dices, es básicamente lo mismo. Claro, podrías escribir un SetCustomerData que configure varias propiedades del cliente, pero al fin y al cabo también puedes poner una propiedad pública (con accesores) CustomerData que haga lo mismo. También me deja dudas el hecho de tener que ser explícito. Si tengo que ser explícito puede ser porque no estoy encapsulando lo suficiente. Si me abstraigo lo suficiente no debería importarme si el acceso agrega o no lógica alguna.

Es interesante lo que decís, a mi no se me hubiera ocurrido esta relación, ya que ambos métodos deberían dar el mismo nivel de encapsulamiento, aunque tienes razón y si veo tu punto, ahora que lo mencionas. Pero de todas maneras no se si me convence, aunque, cómo dije al principio, reconozco que es algo personal, creo que mas adelante puede ser me de a entender, y que se vean nuestros puntos de vista opuestos al respecto <g>

<snip>
>Aquí estamos en desacuerdo. Para mi el inicializar un valor no deberia tener un retorno, porque no preserva la semántica de una acción. En todo caso, si fallara debería levantar una excepción, que me parece un método más limpio en este caso.
>

Ah! no, no, estas completamente equivocado!!! Si que estamos de acuerdo, vos tenés razón <g>

Aunque debo reconocer yo uso este método (shame on me, sinner!) ya que se me hace más fácil de esta manera, ahora me siento avergonzado de ser tan vago!

>¿Porqué no usar propiedades públicas con accesores? ¿Tus métodos Set y Get no son públicos a veces? Para mi es exactamente lo mismo a nivel de visibilidad, pero no semánticamente. Cambiar o leer un campo debería ser sólo eso, sin tener que disparar un comportamiento (método).
>
>En esto prefiero .NET a Java. La implementación de propiedades me resulta más limpia, y en el caso de VFP es bastante buena si se la maneja apropiadamente. Definitivamente, me anoto del lado de Access y Assign.

Asi es como lo veo yo, si bien declaras una propiedad cómo Pública, al momento que le pones accessors/setters deja de serlo, ya que de alguna manera le estas (o mejor dicho podrías estar) limitando su "Visibilidad" indirectamente, por ejemplo negando un cambio por falta de derechos, o cualquier cosa.

Yo creo que aquí radica nuestra diferencia de opinión, ya que es justo lo que yo veo al revés, vos decís: "Cambiar o leer un campo debería ser sólo eso, sin tener que disparar un comportamiento (método)", pero sin embargo, los _assign y _access hacen justamente eso, pero... a escondidas, yo prefiero la honestidad de los get/set que de entrada vienen y te dicen, si, esta propiedad es mia, mia y solamente mia, pero voy a ser bueno por esta vez y te voy a dejar accederla/cambiarla si me lo pides de buena onda; por otro lado usando _assign y _access me dan la impresion que dicen "Aqui tienes esta propiedad, puedes usarla libremente, es tuya", y en cuanto la tratas de usar, los muy traicioneros empiezan a hablar mal de ti a tus espaldas.

Bueno, perdonáme el lenguaje completamente no técnico, pero cómo dije antes, es más que nada una opinión personal, no muy basada en técnica <g>

>
>Como siempre, es un placer discutir contigo.
>
>Un abrazo,

Ah, a mi no me gusta para nada discutir contigo, llevo las de perder!

Un abrazo también
"The five senses obstruct or deform the apprehension of reality."
Jorge L. Borges?

"Premature optimization is the root of all evil in programming."
Donald Knuth, repeating C. A. R. Hoare

"To die for a religion is easier than to live it absolutely"
Jorge L. Borges
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform