Actualizado: 11/Abr/2001
Como ya sabrás, al menos ya lo habrás leido aquí en mis páginas o en cualquier otro sitio, todas las versiones betas son eso: betas, es decir que no son las versiones definitivas, por tanto la forma de trabajar con dichas versiones puede cambiar, (y normalmente así ocurre), antes de que la versión definitiva salga a la luz.
Por tanto, puede que el código mostrado en las páginas sobre la nueva versión de Visual Basic no funcione en futuras revisiones ni incluso en la versión definitiva; tal y como ha ocurrido con el SDK preview y la Beta1.
Según se ha publicado en los grupos de noticias, algunos de los cambios que habían hecho sobre la forma de usar AND, OR, etc. va a ser como hasta ahora era en VB6. En la Beta1 existen operadores AND, OR, XOR y NOT tanto para comparaciones lógicas como para tratamientos de bits: BitAnd, BitOr, BitXor, BitNot, pues bien, la intención es que esos cambios no pasen a la versión definitiva de VB.NET; todo dependerá del grado de aceptación de estos cambios... si la gente protesta, y son muchos los que lo hacen, puede ser que no lleguen hasta el final.
Otro de esos cambios "anunciados públicamente por personal de Microsoft", es el valor asignado a True.
En los lenguajes de la plataforma .NET, (incluido el VB.NET), el valor de True es 1, mientras que en nuestro querido VB6 (y cualquier versión anterior de Basic), el valor siempre ha sido -1. Ahora en VB.NET quieren volver a asignarle el valor -1, para que haya "compatiblidad" con las versiones anteriores de Visual Basic... creo que deberían conservar el valor que TODOS los demás lenguajes de la plataforma .NET van a tener antes de empezar a hacer cambios para tener "un poco" de compatibilidad hacia atrás... ya que como se suele decir: "Para atrás ni para coger carrerilla...".Otro de esos cambios anunciados tiene que ver con el número de elementos de un array.
Hasta ahora, en Basic (incluido el Visual Basic 6), cuando declarabas un array de esta forma:
Dim x(10) As String
Teníamos un array con 11 elementos: desde x(0) hasta x(10), siempre y cuando no se indicase lo contrario con Option Base 1.
En Visual Basic.NET y el resto de lenguajes .NET, esa misma declaración crea un array de 10 elementos desde x(0) hasta x(9), es más, todos los arrays declarados siempre tienen como inicio el elemento cero. En VB.NET desaparece Option Base asi como el "To" para declarar elementos de un array que empiecen con un valor distinto a cero; por tanto no se puede indicar de ninguna forma que un array empiece con un valor distinto a cero.
Los cambios propuestos y anunciados públicamente para la nueva versión de VB.NET es mantener la "compatibilidad" de crear 11 elementos... Eso sí, los arrays siguen empezando por cero.En mi humilde opinión, creo que deberían dejar esos cambios tal y como están, ya que si sabemos que tenemos 10 elementos en el array, pues que más da... si sabemos que True vale 1, ¿para que usar -1?, si sabemos que podemos usar diferentes operadores para hacer comparaciones como para manejar los números bit a bit... ¿que problema hay?
Prefiero ser "consistente" con el resto de lenguajes .NET que tener "un poco de compatibilidad hacia atrás". Otra cosa es que esos fuesen los únicos cambios...Bueno, espero teneros informados cuando haya nuevas "aclaraciones públicas" referente a la nueva versión de Visual Basic.NET
Nos vemos.
Guillermo