>Hola que tal, me podrian explicar porque no es bueno definir variables publicas..., ya que por algun lado observe que no es bueno hacerlo, y desde ahi meto las variables que eran publicas a una clase...Simple. Variables publicas no tienen cabida en un sistema OOP.
Rompen encapsulacion
Son una fuente de bugs dificiles de encontrar y corregir. Los valores de una variable pueden ser cambiados en otro modulo o clase y ni te enteras porque ni donde se han cambiado cuando las esperas en cierto valor.
Realmente no hacen falta. Para tener un alcance (scope) mayor que abarque a todo un form u otro objeto, usas propieades del objeto en lugar de variables.
Para tener alcance global en tu aplicacion, creas un objeto que tenga vida durante toda la aplicacion, como oAPP por ejemplo el que mantiene tus metodos y propiedades de uso global. O puedes usar objetos como _screen.
HTH