stringtranslate.com

Visual Basic (.NET)

Visual Basic ( VB ), originalmente llamado Visual Basic .NET ( VB.NET ), es un lenguaje de programación orientado a objetos de múltiples paradigmas , implementado en .NET , Mono y .NET Framework . Microsoft lanzó VB.NET en 2002 como sucesor de su lenguaje Visual Basic original , cuya última versión fue Visual Basic 6.0. Aunque la parte ".NET" del nombre se eliminó en 2005, este artículo utiliza "Visual Basic [.NET]" para referirse a todos los lenguajes de Visual Basic lanzados desde 2002, con el fin de distinguirlos del Visual Basic clásico . Junto con C# y F# , es uno de los tres lenguajes principales dirigidos al ecosistema .NET. Microsoft actualizó su estrategia de lenguaje VB el 6 de febrero de 2023, indicando que VB ahora es un lenguaje estable y que Microsoft seguirá manteniéndolo. [6]

El entorno de desarrollo integrado (IDE) de Microsoft para desarrollar en Visual Basic es Visual Studio . La mayoría de las ediciones de Visual Studio son comerciales ; las únicas excepciones son Visual Studio Express y Visual Studio Community , que son software gratuito . Además, el SDK de .NET Framework incluye un compilador de línea de comandos gratuito llamado vbc.exe. Mono también incluye un compilador VB.NET de línea de comandos.

Visual Basic se utiliza a menudo junto con la biblioteca GUI de Windows Forms para crear aplicaciones de escritorio para Windows . La programación para Windows Forms con Visual Basic implica arrastrar y soltar controles en un formulario utilizando un diseñador GUI y escribir el código correspondiente para cada control.

Uso para crear programas GUI

La biblioteca Windows Forms se usa más comúnmente para crear interfaces GUI en Visual Basic. Todos los elementos visuales de la biblioteca de clases de Windows Forms derivan de la clase Control. Esto proporciona la funcionalidad mínima de un elemento de la interfaz de usuario, como ubicación, tamaño, color, fuente, texto, así como eventos comunes como hacer clic y arrastrar/soltar. La clase Control también tiene soporte de acoplamiento para permitir que un control reorganice su posición debajo de su padre.

Los formularios normalmente se diseñan en Visual Studio IDE . En Visual Studio, los formularios se crean mediante técnicas de arrastrar y soltar . Se utiliza una herramienta para colocar controles (por ejemplo, cuadros de texto, botones, etc.) en el formulario (ventana). Los controles tienen atributos y controladores de eventos asociados a ellos. Los valores predeterminados se proporcionan cuando se crea el control, pero el programador puede cambiarlos. Muchos valores de atributos se pueden modificar durante el tiempo de ejecución en función de las acciones del usuario o cambios en el entorno, proporcionando una aplicación dinámica. Por ejemplo, se puede insertar código en el controlador de eventos de cambio de tamaño del formulario para reposicionar un control de modo que permanezca centrado en el formulario, se expanda para llenar el formulario, etc. Al insertar código en el controlador de eventos para presionar una tecla en un cuadro de texto, el programa puede traducir automáticamente las mayúsculas y minúsculas del texto que se ingresa, o incluso evitar que se inserten ciertos caracteres.

Sintaxis

Visual Basic utiliza declaraciones para especificar acciones. La declaración más común es una declaración de expresión, que consta de una expresión que se va a evaluar, en una sola línea. Como parte de esa evaluación, se pueden llamar funciones o subrutinas y se pueden asignar nuevos valores a las variables . Para modificar la ejecución secuencial normal de declaraciones, Visual Basic proporciona varias declaraciones de flujo de control identificadas por palabras clave reservadas. La programación estructurada está respaldada por varias construcciones, incluidas dos construcciones de ejecución condicional ( ... ... ... y ... ... ) y cuatro construcciones de ejecución iterativa (bucle) ( ... , ... , y . .. ). La declaración ... tiene secciones separadas de inicialización y prueba, las cuales deben estar presentes. (Vea los ejemplos a continuación). La declaración recorre cada valor de una lista.IfThenElseEnd IfSelect CaseCaseEnd SelectDoLoopForToFor EachWhileEnd WhileForToFor Each

Además, en Visual Basic:

Ejemplo sencillo

El siguiente es un programa de Visual Basic muy simple, una versión del clásico ejemplo "¡ Hola, mundo! " creado como una aplicación de consola:

Módulo Módulo1  Sub Main () ' El clásico "¡Hola mundo!" Programa de demostración Consola . WriteLine ( "¡Hola, mundo!" ) Fin del subtítulo     Módulo final 

Imprime " ¡Hola, mundo! " en una ventana de línea de comandos . Cada línea tiene un propósito específico, de la siguiente manera:

Módulo Módulo1 

Esta es una definición de módulo. Los módulos son una división de código, que puede contener cualquier tipo de objeto, como constantes o variables, funciones o métodos, o clases, pero no se pueden instanciar como objetos como clases y no pueden heredar de otros módulos. Los módulos sirven como contenedores de código al que se puede hacer referencia desde otras partes de un programa. [8]
Es una práctica común que un módulo y el archivo de código que lo contiene tengan el mismo nombre. Sin embargo, esto no es necesario, ya que un único archivo de código puede contener más de un módulo y/o clase.

Sub principal () 

Esta línea define una subrutina llamada "Principal". "Principal" es el punto de entrada, donde el programa comienza a ejecutarse. [9]

Consola . WriteLine ( "¡Hola, mundo!" )

Esta línea realiza la tarea real de escribir el resultado. La consola es un objeto del sistema que representa una interfaz de línea de comandos (también conocida como "consola") y otorga acceso programático a los flujos estándar del sistema operativo . El programa llama al método de consola WriteLine, lo que hace que la cadena que se le pasa se muestre en la consola.

En lugar de Console.WriteLine, se podría usar MsgBox, que imprime el mensaje en un cuadro de diálogo en lugar de una ventana de línea de comandos. [10]

Ejemplo complejo

Este fragmento de código envía el Triángulo de Floyd a la consola:

Importaciones Sistema.Consola Programa del módulo  Subprincipal () filas oscuras como número entero      'Validación de entrada. Hacer hasta un número entero . TryParse ( ReadLine ( "Ingrese un valor para cuántas filas se mostrarán: " & vbcrlf ), filas ) AndAlso filas >= 1 WriteLine ( "El rango permitido es 1 y {0}" , Integer . MaxValue ) Loop ' Salida de Floyd Triángulo Atenuar actual Como entero = 1 Atenuar fila Como entero Atenuar columna Como entero Para fila = 1 A filas Para columna = 1 A fila Escribir ( "{0,-2} " , actual ) actual += 1 Siguiente                                                 WriteLine () Siguiente fin Sub    ''' <summary> ''' Como Console.ReadLine pero toma una cadena de mensaje. ''' </summary> Función ReadLine ( mensaje opcional Como cadena = Nada ) Como cadena Si el mensaje no es nada , entonces escriba ( mensaje ) Fin si                    Consola de retorno . Función final ReadLine ()   Módulo final 

Comparación con el clásico Visual Basic

Si Visual Basic .NET debe considerarse simplemente otra versión de Visual Basic o un lenguaje completamente diferente es un tema de debate. Hay nuevas incorporaciones para admitir nuevas funciones, como el manejo estructurado de excepciones y expresiones en cortocircuito. Además, se produjeron dos cambios importantes en el tipo de datos con el cambio a VB.NET: en comparación con Visual Basic 6, la longitud del Integer tipo de datos se duplicó de 16 bits a 32 bits, y la longitud del Long tipo de datos se duplicó de 32 bits. a 64 bits. Esto es válido para todas las versiones de VB.NET. Un entero de 16 bits en todas las versiones de VB.NET ahora se conoce como Short. De manera similar, el editor de Windows Forms es muy similar en estilo y función al editor de formularios de Visual Basic.

Lo que ha cambiado significativamente es la semántica: desde la de un lenguaje de programación basado en objetos que se ejecuta en un motor determinista con recuento de referencias basado en COM hasta un lenguaje totalmente orientado a objetos respaldado por .NET Framework , que consiste en una combinación de Common Language Runtime (una máquina virtual que utiliza recolección de basura generacional y un motor de compilación justo a tiempo ) y una biblioteca de clases mucho más grande . La mayor amplitud de este último también es un problema con el que los desarrolladores de VB tienen que lidiar cuando llegan al lenguaje, aunque esto se soluciona en cierta medida con la característica Mi en Visual Studio 2005.

Los cambios han alterado muchas suposiciones subyacentes sobre lo "correcto" que se debe hacer con respecto al rendimiento y la mantenibilidad. Algunas funciones y bibliotecas ya no existen; hay otros disponibles, pero no tan eficientes como las alternativas .NET "nativas". Incluso si se compilan, la mayoría de las aplicaciones de Visual Basic 6 convertidas requerirán cierto nivel de refactorización para aprovechar al máximo el nuevo lenguaje. Hay documentación disponible para cubrir cambios en la sintaxis, depuración de aplicaciones, implementación y terminología. [11]

Ejemplos comparativos

Los siguientes ejemplos simples comparan la sintaxis de VB y VB.NET. Suponen que el desarrollador creó un formulario, colocó un botón en él y asoció las subrutinas demostradas en cada ejemplo con el controlador de eventos de clic del botón mencionado. Cada ejemplo crea un cuadro de mensaje "Hola mundo" después de hacer clic en el botón del formulario.

Visual Básico 6:

Subcomando privado1_Click () MsgBox "Hola mundo " Fin Sub     

VB.NET (se puede utilizar la clase MsgBox o MessageBox):

Subbotón privado1_Click ( remitente como objeto , e como EventArgs ) Maneja el botón1 . Haga clic en MsgBox ( "Hola, mundo" ) Fin Sub           

El siguiente ejemplo demuestra una diferencia entre Visual Basic 6 y VB.NET. Ambos ejemplos cierran la ventana activa .

Visual Básico 6:

Sub cmdClose_Click ( ) Descargarme End Sub    

VB.NET:

Sub btnClose_Click ( remitente como objeto , e como EventArgs ) Maneja btnClose . Haga clic en Cerrar () Fin Sub          

El prefijo 'cmd' se reemplaza por el prefijo 'btn', conforme a la nueva convención mencionada anteriormente. [ ¿cual? ]

Visual Basic 6 no proporcionaba atajos de operador comunes. Los siguientes son equivalentes:

Visual Básico 6:

Sub Timer1_Timer () 'Reduce la altura del formulario en un píxel por tick Yo . Altura = Yo . Altura - 1 extremo secundario        

VB.NET:

Sub Timer1_Tick ( remitente como objeto , e como EventArgs ) maneja Timer1 . Mírame .Altura -= 1 Sub final            

Comparación con C#

C# y Visual Basic son los primeros lenguajes de Microsoft creados para programar en .NET Framework (luego se agregaron F# y más; otros también agregaron lenguajes). Aunque C# y Visual Basic son sintácticamente diferentes, ahí es donde terminan la mayoría de las diferencias. Microsoft desarrolló ambos lenguajes para que fueran parte de la misma plataforma de desarrollo .NET Framework. Ambos son desarrollados, administrados y respaldados por el mismo equipo de desarrollo de lenguajes de Microsoft. [13] Se compilan en el mismo lenguaje intermedio (IL), que se ejecuta en las mismas bibliotecas de tiempo de ejecución de .NET Framework. [14] Aunque existen algunas diferencias en las construcciones de programación, sus diferencias son principalmente sintácticas y, suponiendo que se eviten las bibliotecas de "Compatibilidad" de Visual Basic proporcionadas por Microsoft para ayudar a la conversión desde Visual Basic 6, casi todas las características en VB tienen una característica equivalente. en C# y viceversa. Por último, ambos lenguajes hacen referencia a las mismas clases base de .NET Framework para ampliar su funcionalidad. Como resultado, con pocas excepciones, un programa escrito en cualquiera de los idiomas se puede ejecutar a través de un convertidor de sintaxis simple para traducir al otro. Hay muchos productos de código abierto y disponibles comercialmente para esta tarea.

Ejemplos

¡Hola Mundo!

Aplicación de formularios de Windows

Requiere un botón llamado Botón1.

Formulario de clase pública1   Subbotón privado1_Click ( remitente como objeto , e como Args de evento ) Maneja el botón1 . Haga clic en MsgBox ( "¡Hola mundo!" , MsgBoxStyle . Información , "¡Hola mundo!" ) 'Muestra un mensaje que dice "¡Hola mundo!". Clase final subfinal                
¡Hola Mundo! ventana

Aplicación de consola

Módulo Módulo1  Subprincipal ( ) Consola . WriteLine ( "¡Hola mundo!" ) ' Escribe en la consola "¡Hola mundo!" y comenzar una nueva línea. Consola . ReadKey () 'El usuario debe presionar cualquier tecla antes de que finalice la aplicación. Módulo final subfinal        

Discurso

Aplicación de formularios de Windows

Requiere un TextBox titulado 'TextBox1' y un botón llamado Button1.

Clase pública Form1 Sub botón privado1_Click ( remitente como objeto , e como EventArgs ) Maneja el botón1 . Haga clic en CrearObjeto ( "Sapi.Spvoice" ). Hablar ( TextBox1 . Texto ) Fin Sub Fin Clase                 

Aplicación de consola

Módulo Módulo1  Voz privada = CreateObject ( "Sapi.Spvoice" )    Texto privado como cadena    Sub principal ()  Consola . Escribir ( "Ingrese el texto para hablar: " ) ' Diga "Ingrese el texto para hablar: "  Texto = Consola . ReadLine () 'El usuario debe ingresar el texto para hablar.    Voz . Hablar ( Texto ) 'Di el texto que el usuario ha ingresado.  Subtítulo final Módulo final 

Historial de versiones

Después de la versión 6.0 clásica de Visual Basic , la primera versión de Visual Basic .NET debutó en 2002. A partir de 2020 , se lanzan diez versiones de Visual Basic .NET.

2002 (VB 7.0)

La primera versión, Visual Basic .NET, se basa en .NET Framework 1.0 . La característica más importante es el código administrado , que contrasta con el clásico Visual Basic.

2003 (VB 7.1)

Visual Basic .NET 2003 se lanzó con .NET Framework 1.1 . Las nuevas características incluyeron soporte para .NET Compact Framework y un mejor asistente de actualización de VB . También se realizaron mejoras en el rendimiento y la confiabilidad de .NET IDE (particularmente el compilador en segundo plano) y el tiempo de ejecución. Además, Visual Basic .NET 2003 estaba disponible en Visual Studio.NET Academic Edition, distribuido a un cierto número de académicos [ palabras de comadreja ] de cada país sin costo.

2005 (VB 8.0)

Después de Visual Basic .NET 2003, Microsoft eliminó ".NET" del nombre del producto y llamó a la siguiente versión Visual Basic 2005.

Para esta versión, Microsoft agregó muchas características destinadas a reforzar el enfoque de Visual Basic .NET como plataforma de desarrollo rápido de aplicaciones y diferenciarlo aún más de C# , que incluyen:

Para cerrar las brechas entre él y otros lenguajes .NET, esta versión agregó:

Visual Basic 2005 introdujo el IsNotoperador que 'If X IsNot Y'equivale a 'If Not X Is Y'. Ganó notoriedad [20] cuando se descubrió que era objeto de una solicitud de patente de Microsoft. [21] [22]

2008 (VB 9.0)

Visual Basic 9.0 se lanzó junto con .NET Framework 3.5 el 19 de noviembre de 2007.

Para esta versión, Microsoft agregó muchas características, que incluyen:

2010 (VB 10.0)

En abril de 2010, Microsoft lanzó Visual Basic 2010. Microsoft había planeado usar Dynamic Language Runtime (DLR) para esa versión [23] pero cambió a una estrategia de coevolución entre Visual Basic y el lenguaje hermano C# para acercar ambos lenguajes a una paridad más estrecha. unos y otros. La capacidad innata de Visual Basic para interactuar dinámicamente con objetos CLR y COM se ha mejorado para funcionar con lenguajes dinámicos creados en DLR, como IronPython y IronRuby . [24] El compilador de Visual Basic se mejoró para inferir la continuación de línea en un conjunto de contextos comunes, eliminando en muchos casos la necesidad de los caracteres de continuación de línea " _". Además, el soporte existente de funciones en línea se complementó con soporte para Subs en línea, así como versiones multilínea de lambdas Sub y Function. [25]

2012 (VB 11.0)

Visual Basic 2012 se lanzó junto con .NET Framework 4.5 . Las principales características introducidas en esta versión incluyen: [ se necesita más explicación ]

2013 (VB 12.0)

Visual Basic 2013 se lanzó junto con .NET Framework 4.5.1 con Visual Studio 2013. También puede crear aplicaciones .NET Framework 4.5.2 instalando Developer Pack. [26]

2015 (VB 14.0)

Visual Basic 2015 (nombre en código VB "14.0") se lanzó con Visual Studio 2015. Las características del lenguaje incluyen un nuevo "?". operador para realizar comprobaciones nulas en línea y se incluye una nueva función de interpolación de cadenas para formatear cadenas en línea. [27]

2017 (VB 15.x)

Visual Basic 2017 (nombre en código VB "15.0") se lanzó con Visual Studio 2017. Amplía la compatibilidad con las nuevas funciones del lenguaje Visual Basic 15 con la revisión 2017, 15.3, 15.5, 15.8. Introduce nuevas refactorizaciones que permiten organizar el código fuente con una sola acción. [28] [29]

2019 (VB 16.0)

Visual Basic 2019 (nombre en código VB "16.0") se lanzó con Visual Studio 2019. [30] Es la primera versión de Visual Basic centrada en .NET Core. [31]

Desarrollo multiplataforma y de código abierto

El compilador oficial de Visual Basic está escrito en Visual Basic y está disponible en GitHub como parte de .NET Compiler Platform . [32] La creación de herramientas de código abierto para el desarrollo de Visual Basic ha sido lenta en comparación con C# , aunque la plataforma de desarrollo Mono proporciona una implementación de bibliotecas específicas de Visual Basic y un compilador compatible con Visual Basic 2005 escrito en Visual Basic, [33] así como bibliotecas de marco estándar, como la biblioteca GUI de Windows Forms .

MonoDevelop era un IDE alternativo de código abierto . El entorno Gambas también es similar pero distinto de Visual Basic, al igual que el Editor Visual FB para FreeBasic .

Ver también

Referencias

  1. ^ "Notas de la versión de Visual Studio 2022 versión 17.9.2". 27 de febrero de 2024 . Consultado el 27 de febrero de 2024 .
  2. ^ ab "Opción explícita y opción estricta en Visual Basic .NET y Visual Basic". Apoyo . Microsoft . 19 de marzo de 2008. Archivado desde el original el 4 de abril de 2015 . Consultado el 22 de agosto de 2013 .
  3. ^ Dollard, Kathleen (13 de noviembre de 2018). "Visual Basic en .NET Core 3.0". blogs.msdn.microsoft.com . Archivado desde el original el 19 de noviembre de 2018 . Consultado el 21 de noviembre de 2018 .
  4. ^ "Soporte de Visual Basic planificado para .NET 5.0 | Blog de Visual Basic". Blogs.msdn.microsoft.com. 11 de marzo de 2020. Archivado desde el original el 5 de enero de 2022 . Consultado el 26 de agosto de 2020 .
  5. ^ "Dotnet/Roslyn". GitHub . 2 de noviembre de 2022. Archivado desde el original el 2 de mayo de 2019 . Consultado el 14 de abril de 2019 .
  6. ^ KathleenDollard (6 de febrero de 2023). "Estrategia del lenguaje Visual Basic - Visual Basic". aprender.microsoft.com . Archivado desde el original el 31 de marzo de 2023 . Consultado el 31 de marzo de 2023 .
  7. ^ "Nuevas funciones en Visual Basic 10". 3 de junio de 2010. Archivado desde el original el 4 de marzo de 2016 . Consultado el 5 de septiembre de 2015 .
  8. ^ "Declaración del módulo". MSDN – Centro de desarrolladores. Archivado desde el original el 9 de enero de 2010 . Consultado el 20 de enero de 2010 .
  9. ^ "Procedimiento principal en Visual Basic". MSDN – Centro de desarrolladores. Archivado desde el original el 28 de enero de 2010 . Consultado el 20 de enero de 2010 .
  10. ^ "Versión Visual Basic de Hola mundo". MSDN – Centro de desarrolladores. Archivado desde el original el 11 de enero de 2010 . Consultado el 20 de enero de 2010 .
  11. ^ "Centro de recursos de migración de Microsoft Visual Basic 6.0". MSDN . Microsoft . Archivado desde el original el 9 de noviembre de 2014 . Consultado el 9 de noviembre de 2014 .
  12. ^ "Documentación técnica retirada de Visual Studio 2003". Centro de descarga de Microsoft . Archivado desde el original el 30 de diciembre de 2014 . Consultado el 24 de julio de 2018 .
  13. ^ Krill, Paul (27 de febrero de 2009). "Lenguajes de programación convergentes de Microsoft | Mundo de desarrolladores". Infomundo. Archivado desde el original el 26 de enero de 2013 . Consultado el 18 de agosto de 2013 .
  14. ^ "Lenguaje intermedio de Microsoft". Dotnet-guide.com. Archivado desde el original el 2 de junio de 2013 . Consultado el 18 de agosto de 2013 .
  15. ^ Mackenzie, Duncan (2006). "Navegue por .NET Framework y sus proyectos con My Namespace". Revista MSDN Visual Studio 2005 Visita guiada 2006 . Microsoft . Archivado desde el original el 15 de febrero de 2014 . Consultado el 6 de febrero de 2014 .
  16. ^ Whitney, Tyler (noviembre de 2005). "My.Internals: examen de mi función de Visual Basic". MSDN . Microsoft . Archivado desde el original el 14 de junio de 2012 . Consultado el 6 de febrero de 2014 .
  17. ^ "Novedades del Asistente de actualización de Visual Basic en Visual Basic 2005". msdn2.microsoft.com . Archivado desde el original el 6 de abril de 2008 . Consultado el 29 de enero de 2008 .
  18. ^ "Definición y uso de genéricos en Visual Basic 2005". msdn2.microsoft.com . Archivado desde el original el 23 de abril de 2008 . Consultado el 29 de enero de 2008 .
  19. ^ "Sobrecarga de operadores en Visual Basic 2005". msdn2.microsoft.com . Archivado desde el original el 23 de abril de 2008 . Consultado el 29 de enero de 2008 .
  20. ^ Sheriff, Lucy (22 de febrero de 2005). "Real Software critica la solicitud de patente de MS IsNot". El registro. Archivado desde el original el 3 de agosto de 2009 . Consultado el 6 de abril de 2009 .
  21. ^ Taft, Darryl K. (21 de febrero de 2005). "El software real critica el esfuerzo de patentes de Microsoft". Semana electrónica. Archivado desde el original el 31 de julio de 2012 . Consultado el 6 de abril de 2009 .
  22. ^ Vick, Paul A. Jr.; Barsan, Costica Corneliu; Plata, Amanda K. (14 de mayo de 2003). "Solicitud de patente de Estados Unidos: 20040230959". Solicitud de patente Base de datos de imágenes y texto completo . Oficina de Patentes y Marcas de EE. UU. Archivado desde el original el 11 de febrero de 2006 . Consultado el 6 de abril de 2009 .
  23. ^ "¿Qué diablos es" VBx "?". 1 de mayo de 2007. Archivado desde el original el 25 de mayo de 2009 . Consultado el 12 de agosto de 2009 . Con el nuevo DLR, tenemos soporte para IronPython, IronRuby, Javascript y la nueva compilación dinámica VBx.
  24. ^ "Novedades de Visual Basic 2010". Microsoft . 2009. Archivado desde el original el 4 de agosto de 2009 . Consultado el 12 de agosto de 2009 . Visual Basic se une a objetos de lenguajes dinámicos como IronPython y IronRuby.
  25. ^ "Novedades de Visual Basic 2010". Microsoft. 2010. Archivado desde el original el 26 de julio de 2010 . Consultado el 1 de agosto de 2010 .
  26. ^ "Descargue Microsoft .NET Framework 4.5.2 Developer Pack para Windows Vista SP2, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2008 SP2 Windows Server 2008 R2 SP1, Windows Server 2012 y Windows Server 2012 R2 del Centro de descarga oficial de Microsoft ". Microsoft . Archivado desde el original el 9 de enero de 2020 . Consultado el 11 de enero de 2020 .
  27. ^ "Nuevas funciones de lenguaje en Visual Basic 14". msdn.com . Archivado desde el original el 25 de diciembre de 2014 . Consultado el 5 de febrero de 2015 .
  28. ^ reshmim. "Notas de la versión de Visual Studio 2017". www.visualstudio.com . Archivado desde el original el 22 de enero de 2018 . Consultado el 5 de abril de 2017 .
  29. ^ reshmim. "Novedades de Visual Basic 2017,15.3,15.5,15.8". www.visualstudio.com . Archivado desde el original el 1 de septiembre de 2019 . Consultado el 11 de enero de 2020 .
  30. ^ reshmim. "Notas de la versión de Visual Studio 2019". www.visualstudio.com . Archivado desde el original el 29 de noviembre de 2021 . Consultado el 2 de agosto de 2019 .
  31. ^ reshmim. "Novedades de Visual Basic 16.0". www.visualstudio.com . Archivado desde el original el 1 de septiembre de 2019 . Consultado el 11 de enero de 2020 .
  32. ^ Roslyn, .NET Foundation, 13 de abril de 2019, archivado desde el original el 22 de febrero de 2021 , recuperado 14 de abril de 2019
  33. ^ "Redireccionando ...". www.mono-project.com . Archivado desde el original el 30 de enero de 2021 . Consultado el 30 de junio de 2008 .

Otras lecturas

  1. "Especificación del lenguaje Visual Basic 8.0". Corporación Microsoft. 15 de noviembre de 2005. Archivado desde el original el 21 de enero de 2011 . Consultado el 10 de diciembre de 2010 .
  2. "Especificación del lenguaje Visual Basic 9.0". Corporación Microsoft. 19 de diciembre de 2007 . Consultado el 28 de septiembre de 2011 .
  3. "Especificación del lenguaje Visual Basic 11.0". Corporación Microsoft. 7 de junio de 2013. Archivado desde el original el 5 de marzo de 2012 . Consultado el 22 de septiembre de 2013 .

enlaces externos