Comunidad de diseño web y desarrollo en internet online

Confiamos en clases con miembros estáticos privados?

Citar            
MensajeEscrito el 11 Ene 2011 02:13 pm
Que tan seguras podrían ser la implementación de clases con métodos, propiedades y variables estáticas?? comienzo a hacer esta pregunta que surge a partir de un proyecto en el que he estado trabajando en AS2, que inesperadamente una de sus clases, la más importante, en particular era un clase estática en sus totalidad.

Sometiendo la aplicación a prueba de seguridad, note que de ninguna manera se podía acceder ni escribir en los miembros privados estáticos, pero en una de las pruebas note algo extraño que lo explicaré de la siguiente manera.

Supongamos la siguiente clase:

Código ActionScript :

class Sample {
      static private var miVar:Number = 1;
}


Como es de esperar, desde la aplicación no se puede acceder a la variable estática privada, pero si sometemos a la clase en For in, desde la aplicación podemos ver todos los miembros estáticos públicos y privados

Código ActionScript :

import Sample;

for (var prop in Sample) {
   trace("Sample."+prop+" = "+Sample[prop]);
}


Lo que es peor es que se puede escribir sobre las variables estáticas privadas de la siguiente forma:

Código ActionScript :

Sample["miVar"] = 2;


Dado lo anterior, cual es el objeto de los miembros estáticos privados si de cierta forma son públicos. Buscando remedio al problema decidí hacer que la clase no tuviera elementos estáticos, por lo que consideré utilizar el tipo Singleton, pero para mi suerte esta modalidad también hace uso de una variable privada estática que indica que ya fue creada una única instancia, y como es lógico, esto sería fácil modificar.

Mi solución en particular es hacer una instancia normal de la clase, de esta forma no he conseguido acceder a la información privada de la clase. Me gustaría saber sus opiniones, o si lo anterior es un tema ya conocido o he errado, disculpen mi mal información.

Un saludo para todos.

Por Sputnick

18 de clabLevel



 

chrome
Citar            
MensajeEscrito el 11 Ene 2011 02:28 pm
Si realmente quieres variables privadas usa AS3, sino sigue con los trucos, así se hacía en AS2

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 11 Ene 2011 02:38 pm
Ok gracias, que pena por AS2.

Por Sputnick

18 de clabLevel



 

chrome
Citar            
MensajeEscrito el 11 Ene 2011 02:40 pm
¿Pena? ¿Por qué?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 11 Ene 2011 02:45 pm
Pena porque lo he aprendido muy bien durante 3 años y no es robusto, porque he desarrollado varios proyectos en AS2, y pena porque el proyecto en el que trabajo lleva 4 meses y estoy por terminar. y casi no tengo tiempo para pasarme a AS3.

Por Sputnick

18 de clabLevel



 

chrome
Citar            
MensajeEscrito el 12 Ene 2011 03:06 am
Mi consejo es la próxima informarte de la tecnología que uses, AS3 lleva como 7 años en mercado, no un par de meses :-)

Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.