| Artículos | 01 NOV 2000

Microsoft Visual Basic.NET

Tags: Histórico
Estará disponible en el primer semestre de 2001
Francisco Charte.
La herramienta de desarrollo más usada en los sistemas Windows va a sufrir el que posiblemente sea su mayor cambio desde que apareció. En este artículo le facilitamos la información necesaria para que pueda planificar su adaptación a las novedades.

El futuro de Visual Basic estará a partir de ahora íntimamente ligado a la plataforma .NET de Microsoft que, en el artículo La plataforma Microsoft .NET del anterior número de PC World, ya tuvimos ocasión de conocer a grandes rasgos. Microsoft ha tenido que ajustar el lenguaje propiamente dicho para hacerle cumplir con la especificación común conocida como CLS (Common Language Specification), aparte de integrar el entorno de Visual Basic en el conjunto indivisible que ahora será Visual Studio.NET.
Hacer que Visual Basic cumpla con la CLS ha sido el factor determinante para que el lenguaje incorpore características como la herencia, sobrecarga o control estructurado de excepciones. Son quizá las novedades más llamativas –pero no las únicas- de la que será la próxima versión de Visual Basic, cuyo número de versión sería la 7 y que Microsoft ha renombrado como .NET. Aunque no se ha facilitado una fecha de liberación para esta nueva versión, todo parece indicar que será en algún momento del primer semestre del próximo año.
Nuestro objetivo en este artículo es incidir en las novedades más interesantes del que será el sustituto de Visual Basic 6, no sólo comentándolas sino también aportando pequeños ejemplos que le sirvan para acomodarse a la nueva sintaxis del lenguaje. Toda la información vertida en este artículo está basada en una versión previa de Visual Studio.NET y una documentación provisional, por lo que podrían existir diferencias cuando aparezca la versión final.

Aspectos comunes de Visual Studio.NET
Visual Basic.NET formará parte de la próxima versión de Visual Studio, en el que también estarán integrados Visual C++, C# y Visual FoxPro. Un único entorno en el que podrán crearse proyectos en cualquier lenguaje o, incluso, proyectos con módulos en diferentes lenguajes, pudiendo depurar de manera uniforme pasando de módulos con clases escritas en C# a otros desarrollados con Visual Basic, por poner un ejemplo.
Al formar parte de Visual Studio.NET, el futuro Visual Basic compartirá muchas de las características que también tendrán Visual C++, C# y Visual FoxPro. Dichas características tienen más que ver con los servicios aportados por la plataforma Microsoft .NET que con los propios lenguajes, pero lo que está claro es que afectarán de forma notable a la metodología de trabajo que seguíamos hasta ahora. En cierta forma, la plataforma .NET quiere sustituir tanto a la conocida API Win32 como a los componentes COM usados hasta ahora.
Parte de la plataforma .NET serán los WinForms, WebForms y WebServices, mediante los cuales podrán crearse aplicaciones Windows clásicas, aplicaciones accesibles desde clientes a través de La Web y servicios de componentes basados en los protocolos SOAP y HTTP. Visual Basic.NET, al igual que el resto de la familia Visual Studio, utilizará esos nuevos servicios en sustitución de los que hasta ahora existían en Visual Basic 6.
Además de servicios, Visual Basic.NET también tendrá en común con los demás lenguajes y herramientas para la plataforma .NET un entorno común de ejecución. En la Figura 1, correspondiente al artículo La plataforma Microsoft .NET citado antes, puede verse una estructura de bloques con los elementos más importantes de la plataforma .NET. El entorno común de ejecución, más conocido como CLR, está en la base y aporta un conjunto bien definido de tipos de datos, servicios de gestión de memoria y recogida de basura.
Visual Basic.NET no generará código nativo, como sí hace Visual Basic 6, sino código IL (Intermediate Language) ajustado a la CLS, de tal forma que pueda ejecutarse en la plataforma .NET. Al tener que cumplir con esa especificación, Visual Basic ha incorporado elementos hasta ahora desconocidos en este lenguaje, como características de orientación a objetos, control estructurado de excepciones o una comprobación de tipos más exigente.

Adiós Visual Basic, bienvenido Object Basic
No, Microsoft no ha decidido renombrar Visual Basic y llamarle Object Basic aunque, a la vista de las novedades aportadas en el campo de orientación a objetos, lo podría haber hecho sin recibir crítica alguna. La inexistencia de estas características en Visual Basic siembre ha despertado muchas polémicas, a favor y en contra, por parte de los usuarios de Visual Basic y los de otros lenguajes, como C++, Java o Delphi. Con Visual Basic.NET estas discusiones ya no tendrán sentido, ya que las técnicas de orientación a objetos han llegado a VB y lo han hecho para quedarse.
Realmente, ahora cualquier aplicación escrita con Visual Basic está orientada a objetos, ya que el punto de partida siempre es una clase. Esto es algo habitual en lenguajes como C# o Java, en los que todo el código forma parte de la definición o implementación de una clase. Si en el interior de dicha clase existe un método llamado Main() éste toma el control al ejecutar el programa, convirtiéndose en el punto de entrada.
A la hora de diseñar una interfaz de usuario, usando el mismo mecanismo que conocíamos en Visual Basic 6 (véase Figura 2), seguramente lo que más nos llamará la atención sea, precisamente, el código generado. Ahora cada evento no está gestionado por un método independiente, sino que existe una clase derivada de Form con su constructor, destructor y métodos de gestión de eventos. Todos los controles insertados en el formulario, además, son creados en el propio constructor y aparecen como miembros de la clase. No existe, por tanto, el archivo independiente en el que se almacenaba la descripción del formulario.
Para utilizar componentes, Visual Basic.NET ahora no tiene necesidad de importar librerías de tipos incorporando en el proyecto una información que, realmente, el desarrollador prácticamente no puede ver. Tampoco es necesario recurrir al mecanismo de automatización que apareció en Visual Basic 4. Con una simple sentencia, llamada Imports, Visual Basic.NET incluye en el módulo actual referencias a espacios de nombres completos, independientemente de que estos se hayan creado con Visual Basic, Visual C++, C# o cualquier otro lenguaje disponible para la plataforma .NET.
La compatibilidad de Visual Basic.NET con Visual Basic 6, aunque ascendente, no es total, por lo que Microsoft seguramente ofrecerá una herramienta de conversión o adaptación que ayude a los programadores a efectuar las modificaciones necesarias en el código. Instrucciones como Let o Set, por poner un ejemplo, no existen en Visual Basic.NET, por lo que todas las asignaciones de objetos efectuadas en Visual Basic 6, donde el uso de Set es obligatorio, en principio provocarían un error de compilación. Las diferencias existentes en los tipos de datos, como Integer, pueden ser otra fuente de problemas.
El Listado 1 es un ejemplo muy sencillo de aplicación Visual Basic.NET, concretamente una aplicación de consola que se limita a emitir una cadena de caracteres por la salida estándar. Es posible compilar este programa usando el SDK que se mencionaba en el artículo La plataforma Microsoft .NET y

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información