Articulo de referencia

Visual Basic (.NET)

Visual Basic ( VB ), originalmente llamado Visual Basic .NET ( VB.NET ), es un lenguaje de programación orientado a objetos y multiparadigma desarrollado por Microsoft e impleme...

Visual Basic ( VB ), originalmente llamado Visual Basic .NET ( VB.NET ), es un lenguaje de programación orientado a objetos y multiparadigma desarrollado por Microsoft e 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 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 que apuntan al ecosistema .NET. Microsoft actualizó su estrategia para el lenguaje VB el 6 de febrero de 2023, declarando que VB es ahora un lenguaje estable y que Microsoft continuará manteniéndolo, pero no agregará soporte para nuevas cargas de trabajo. [ 6 ]

El entorno de desarrollo integrado (IDE) de Microsoft para programar 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 gratuitas . 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 de VB.NET de línea de comandos.

Visual Basic se usa frecuentemente junto con la biblioteca de interfaz gráfica de usuario (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 mediante un diseñador de GUI y escribir el código correspondiente para cada control.

Uso en la creación de programas con interfaz gráfica de usuario (GUI).

La biblioteca Windows Forms se utiliza comúnmente para crear interfaces gráficas de usuario (GUI) en Visual Basic. Todos los elementos visuales de la biblioteca de clases Windows Forms derivan de la clase Control. Esta clase proporciona la funcionalidad básica de un elemento de interfaz de usuario, como ubicación, tamaño, color, fuente y texto, así como eventos comunes como clic y arrastrar/soltar. La clase Control también admite el acoplamiento, lo que permite que un control cambie su posición bajo su elemento principal.

Los formularios se diseñan normalmente en el IDE de Visual Studio . 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. Se proporcionan valores predeterminados al crear el control, pero se pueden cambiar en la interfaz gráfica de usuario del IDE de Visual Studio o mediante código. Muchos valores de atributos se pueden modificar durante la ejecución mediante código, por ejemplo, en función de las acciones del usuario o de los cambios en el entorno, lo que proporciona una aplicación dinámica. Por ejemplo, se puede insertar código en el controlador de eventos de redimensionamiento del formulario para reposicionar un control de forma que permanezca centrado en el formulario, se expanda para llenarlo, etc. Al insertar código en el controlador de eventos para una pulsación de tecla en un cuadro de texto, el programa puede traducir automáticamente las mayúsculas y minúsculas del texto introducido o incluso impedir la inserción de ciertos caracteres.

Sintaxis

Visual Basic utiliza sentencias para especificar acciones. La sentencia más común es una sentencia de expresión, que consiste en una expresión que se 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 las sentencias, Visual Basic proporciona varias sentencias de control de flujo identificadas por palabras clave reservadas. La programación estructurada es compatible con varias construcciones, incluidas dos construcciones de ejecución condicional ( ... ... ... y ... ... ) y cuatro construcciones de ejecución iterativa (bucle) ( ... , ... , , y ... ). La sentencia ... tiene secciones separadas de inicialización y prueba, ambas deben estar presentes. (Véanse los ejemplos a continuación). La sentencia recorre cada valor en una lista. IfThenElseEnd IfSelect CaseCaseEnd SelectDoLoopForToFor EachWhileEnd WhileForToFor Each

Además, en Visual Basic:

  • No existe una forma unificada de definir bloques de instrucciones. En cambio, ciertas palabras clave, como "If ... Then" o "Sub", se interpretan como el inicio de subbloques de código y tienen palabras clave de terminación correspondientes, como "End If" o "End Sub".
  • Las instrucciones terminan con dos puntos (":") o con el final de línea . Las instrucciones de varias líneas en Visual Basic se habilitan con " _" al final de cada una de ellas. La necesidad del carácter de continuación de guion bajo se eliminó en gran medida en la versión 10 y versiones posteriores. [ 7 ]
  • El signo de igual ("=") se utiliza tanto para asignar valores a variables como para compararlas.
  • Los paréntesis se utilizan con matrices , tanto para declararlas como para obtener un valor en un índice determinado. Visual Basic utiliza paréntesis para definir los parámetros de subrutinas o funciones.
  • Una comilla simple (') o la palabra clave REM, colocada al principio de una línea o después de cualquier número de espacios o caracteres de tabulación al principio de una línea, o después de otro código en una línea, indica que el (resto de la) línea es un comentario .

Ejemplo sencillo

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

Módulo Módulo1Sub Main () ' El clásico programa de demostración "¡Hola, mundo!" Console . WriteLine ( "Hola, mundo!" ) End SubMódulo final

Imprime " ¡Hola, mundo! " en una ventana de línea de comandos . Cada línea tiene un propósito específico, como se indica a continuación:

Módulo Módulo1

Esta es la definición de un módulo. Los módulos son divisiones de código que pueden contener cualquier tipo de objeto, como constantes o variables, funciones o métodos, o clases, pero no pueden instanciarse como objetos como las clases ni heredar de otros módulos. Los módulos sirven como contenedores de código a los que se puede hacer referencia desde otras partes de un programa. [ 8 ] Es 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 obligatorio, ya que un solo archivo de código puede contener más de un módulo o clase.

Sub Principal ()

Esta línea define una subrutina llamada "Main". "Main" es el punto de entrada, donde comienza la ejecución del programa. [ 9 ]

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

Esta línea realiza la tarea de escribir la salida. Console 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 WriteLine de Console , que hace que la cadena que se le pasa se muestre en la consola.

En lugar de Console.WriteLine, una alternativa es 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 muestra el Triángulo de Floyd en la consola:

Importa System.ConsolePrograma del móduloSub Main () Dim filas As Integer' Validación de entrada. Hacer hasta que Integer.TryParse ( ReadLine ( "Ingrese un valor para la cantidad de filas que se mostrarán: " & vbcrlf ) , filas ) Y también filas >= 1 WriteLine ( " El rango permitido es 1 y {0}" , Integer.MaxValue ) Bucle ' Salida del triángulo de Floyd Dim current As Integer = 1 Dim row As Integer Dim column As Integer For row = 1 To rows For column = 1 To row Write ( "{0,-2}" , current ) current += 1 NextWriteLine () Siguiente Fin Sub''' <summary> ''' Similar a Console.ReadLine, pero acepta una cadena de texto para la solicitud. ''' </summary> Function ReadLine ( Optional prompt As String = Nothing ) As String If prompt IsNot Nothing Then Write ( prompt ) End IfDevuelve la consola.LeerLínea () Fin de la funciónMó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 adiciones para admitir nuevas características, como el manejo de excepciones estructuradas y expresiones de cortocircuito. Además, se produjeron dos cambios importantes en los tipos de datos con el paso a VB.NET: en comparación con Visual Basic 6, el Integertipo de datos se ha duplicado en longitud de 16 bits a 32 bits, y el Longtipo de datos se ha duplicado en longitud de 32 bits a 64 bits. Esto es cierto 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: de un lenguaje de programación orientado a objetos que se ejecuta en un motor determinista con conteo de referencias basado en COM , a 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 amplia . La mayor amplitud de esta última también fue un problema con el que los desarrolladores de VB tuvieron que lidiar al adoptar el lenguaje, aunque esto se solucionó en parte con la función My en Visual Studio 2005.

Los cambios alteraron muchas suposiciones subyacentes sobre lo que era "correcto" hacer con respecto al rendimiento y la mantenibilidad de las aplicaciones. Algunas funciones y bibliotecas ya no existen; otras están disponibles, pero no son tan eficientes como las alternativas "nativas" de .NET. Incluso si compilaban, la mayoría de las aplicaciones convertidas de Visual Basic 6 requerían cierto nivel de refactorización para aprovechar al máximo el lenguaje .NET. Microsoft proporcionó documentación para cubrir los cambios en la sintaxis del lenguaje, la depuración de aplicaciones, la implementación y la terminología. [ 11 ] Un libro comercial popular diseñado para facilitar la transición fue Microsoft Visual Basic .NET Professional Step by Step de Michael Halvorson , publicado en 2002 por Microsoft Press .

Ejemplos comparativos

Los siguientes ejemplos sencillos comparan la sintaxis de VB y VB.NET. Parten de la base de que el desarrollador ha creado un formulario, le ha añadido un botón y ha asociado las subrutinas mostradas en cada ejemplo con el controlador de eventos de clic de dicho botón. Cada ejemplo crea un cuadro de mensaje "Hola, mundo" al hacer clic en el botón del formulario.

Visual Basic 6:

Subcomando privado Command1_Click () MsgBox "Hola, mundo" Fin de la subcomando

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

Private Sub Button1_Click ( sender As object , e As EventArgs ) Handles Button1 . Click MsgBox ( "Hola, mundo" ) End Sub
  • Tanto Visual Basic 6 como Visual Basic .NET generan automáticamente las instrucciones Sub`and` End Subcuando se hace doble clic en el botón correspondiente en la vista de diseño. Visual Basic .NET también generará las instrucciones Class`and` necesarias End Class. El desarrollador solo necesita agregar la instrucción `and` para mostrar el cuadro de mensaje "Hola, mundo".
  • Todas las llamadas a procedimientos deben hacerse con paréntesis en VB.NET, mientras que en Visual Basic 6 había convenciones diferentes para las funciones (se requerían paréntesis) y las subrutinas (no se permitían paréntesis, a menos que se llamaran usando la palabra clave Call).
  • Los nombres Command1y Button1no son obligatorios. Sin embargo, estos son los nombres predeterminados para un botón de comando en Visual Basic 6 y VB.NET, respectivamente.
  • En VB.NET, la Handlespalabra clave se utiliza para hacer que la subrutina Button1_Clicksea un controlador para el Clickevento del objeto Button1. En Visual Basic 6, las subrutinas controladoras de eventos deben tener un nombre específico que consta del nombre del objeto ( Command1), un guion bajo ( _) y el nombre del evento ( Click, por lo tanto Command1_Click).
  • Hay una función llamada MessageBox.Showen el Microsoft.VisualBasicespacio de nombres que se puede usar (en lugar de MsgBox) de manera similar a la función correspondiente en Visual Basic 6. Hay una controversia [ 12 ] sobre qué función usar como mejor práctica (no solo restringida a mostrar cuadros de mensaje, sino también con respecto a otras características del Microsoft.VisualBasicespacio de nombres). Algunos programadores prefieren hacer las cosas "a la manera de .NET", ya que las clases del Framework tienen más características y son menos específicas del lenguaje. Otros argumentan que usar características específicas del lenguaje hace que el código sea más legible (por ejemplo, usar int(C#) o Integer(VB.NET) en lugar de System.Int32).
  • En Visual Basic 2008, la inclusión de , se ha vuelto opcional.ByValsenderasObjectByValeasEventArgs

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

Visual Basic 6:

Sub cmdClose_Click ( ) Descargarme Fin Sub

VB.NET:

Sub btnClose_Click ( sender As Object , e As EventArgs ) Handles btnClose . Click Close () End Sub

El prefijo 'cmd' se reemplaza por el prefijo 'btn', de acuerdo con la nueva convención mencionada anteriormente.

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

Visual Basic 6:

Sub Timer1_Timer () ' Reduce la altura del formulario en un píxel por cada tick Me.Height = Me.Height - 1 End Sub

VB.NET:

Sub Timer1_Tick ( sender As Object , e As EventArgs ) Handles Timer1 . Tick Me . Height -= 1 End Sub

Comparación con C#

C# y Visual Basic son los primeros lenguajes de Microsoft diseñados para programar en .NET Framework (posteriormente se añadieron F# y otros; otros también han añadido lenguajes). Aunque C# y Visual Basic son sintácticamente diferentes, ahí terminan las diferencias. Microsoft desarrolló ambos lenguajes para que formaran 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 al mismo lenguaje intermedio (IL) conocido como CIL , que se ejecuta con las mismas bibliotecas de tiempo de ejecución de .NET Framework. [ 14 ] Si bien existen algunas diferencias en las estructuras de programación, estas son principalmente sintácticas y, suponiendo que se eviten las bibliotecas de "compatibilidad" de Visual Basic proporcionadas por Microsoft para facilitar la conversión desde Visual Basic 6, casi todas las características de VB tienen una característica equivalente en C# y viceversa. Ambos lenguajes hacen referencia a las mismas clases base de .NET Framework para extender su funcionalidad, y ambos lenguajes pueden hacer referencia a código compilado escrito en el otro lenguaje. En consecuencia, salvo contadas excepciones, un programa escrito en cualquiera de los dos lenguajes puede traducirse al otro mediante un sencillo conversor de sintaxis. Existen numerosos productos, tanto de código abierto como comerciales, para esta tarea.

Ejemplos

¡Hola Mundo!

Aplicación de formularios de Windows

Requiere un botón llamado Button1.

Clase pública Formulario 1Private Sub Button1_Click ( sender As Object , e As EventArgs ) Handles Button1.Click MsgBox ( " ¡ Hola mundo!" , MsgBoxStyle.Information , " ¡Hola mundo!" ) ' Muestra un mensaje que dice "¡Hola mundo! " . End Sub End Class
¡Hola mundo! ventana

Aplicación de consola

Módulo Módulo1Sub Main () Console.WriteLine ( " ¡ Hola mundo!" ) ' Escribe en la consola "¡Hola mundo!" y comienza una nueva línea. Console.ReadKey ( ) ' El usuario debe presionar cualquier tecla antes de que finalice la aplicación . End Sub End Module

Discurso

Aplicación de formularios de Windows

Requiere un cuadro de texto titulado 'TextBox1' y un botón llamado Button1.

Clase pública Form1 Subprivada Button1_Click ( sender As Object , e As EventArgs ) Handles Button1.Click CreateObject ( " Sapi.Spvoice " ) . Speak ( TextBox1.Text ) End Sub End Class

Aplicación de consola

Módulo Módulo1Voz privada = Crear objeto ( "Sapi.Spvoice" )Texto privado como cadenaSub Principal ()Console.Write ( " Ingrese el texto a reproducir: " ) ' Decir "Ingrese el texto a reproducir: "Texto = Consola.LeerLínea () ' El usuario debe ingresar el texto para que se lea .Voz . Hablar ( Texto ) ' Lee el texto que el usuario ha introducido.Fin SubMódulo final

Historial de versiones

Tras la clásica versión 6.0 de Visual Basic , la primera versión de Visual Basic .NET debutó en 2002. Hasta 2020, se habían lanzado 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 Visual Basic clásico.

2003 (VB 7.1)

Visual Basic .NET 2003 se lanzó junto con .NET Framework 1.1 . Entre las nuevas características se incluían la compatibilidad con .NET Compact Framework y un asistente de actualización de VB mejorado . También se mejoraron el rendimiento y la fiabilidad del IDE de .NET (en particular, el compilador en segundo plano ) y del entorno de ejecución. Además, Visual Basic .NET 2003 estuvo disponible en Visual Studio .NET Academic Edition, que se distribuyó gratuitamente a un número determinado de investigadores de cada país.

2005 (VB 8.0)

Tras Visual Basic .NET 2003, Microsoft eliminó ".NET" del nombre del producto, denominando 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 una plataforma de desarrollo rápido de aplicaciones y diferenciarla aún más de C# , entre las que se incluyen:

  • Función de edición y continuación
  • Evaluación de expresiones en tiempo de diseño
  • Un pseudo- espacio de nombres llamado "My", que proporciona: [ 15 ] [ 16 ]
    • Fácil acceso a ciertas áreas del .NET Framework que de otro modo requerirían un código significativo para acceder, como usar en lugar deMy.Form2.Text=" MainForm "System.WindowsApplication1.Forms.Form2.text=" MainForm "
    • Clases generadas dinámicamente (por ejemplo, My.Forms )
  • Convertidor mejorado de VB a VB.NET [ 17 ]
  • Una palabra clave "using", que simplifica el uso de objetos que requieren el patrón Dispose para liberar recursos.
  • La función Just My Code oculta (omite) el código repetitivo escrito por el IDE de Visual Studio .NET y el código de la biblioteca del sistema durante la depuración.
  • Vinculación de fuentes de datos, facilitando el desarrollo de clientes/servidores de bases de datos .

Para salvar las diferencias entre esta versión y otros lenguajes .NET, se añadió lo siguiente:

Visual Basic 2005 introdujo el IsNotoperador que hace 'If X IsNot Y'equivalente 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, entre ellas:

2010 (VB 10.0)

En abril de 2010, Microsoft lanzó Visual Basic 2010. Microsoft había planeado usar Dynamic Language Runtime (DLR) para ese lanzamiento [ 23 ] , pero cambió a una estrategia de coevolución entre Visual Basic y su lenguaje hermano C# para lograr una mayor paridad entre ambos. La capacidad innata de Visual Basic para interactuar dinámicamente con objetos CLR y COM se mejoró para trabajar con lenguajes dinámicos basados ​​en DLR, como IronPython e 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, la compatibilidad existente con funciones en línea se complementó con compatibilidad con subrutinas en línea, así como con versiones multilínea de las expresiones lambda 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:

  • Programación asíncrona con las instrucciones "async" y "await".
  • Iteradores
  • Jerarquía de llamadas
  • Información de la persona que llama
  • Palabra clave "Global" en declaraciones de "espacio de nombres"

2013 (VB 12.0)

Visual Basic 2013 se lanzó junto con .NET Framework 4.5.1 con Visual Studio 2013. También se pueden crear aplicaciones .NET Framework 4.5.2 instalando el paquete para desarrolladores. [ 26 ]

2015 (VB 14.0)

Visual Basic 2015 (nombre en clave VB "14.0") se lanzó con Visual Studio 2015. Las características del lenguaje incluyen un nuevo operador "?" para realizar comprobaciones de nulidad 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 clave VB "15.0") se lanzó con Visual Studio 2017. Amplía la compatibilidad con las nuevas características del lenguaje Visual Basic 15 con las revisiones 2017, 15.3, 15.5 y 15.8. Introduce nuevas refactorizaciones que permiten organizar el código fuente con una sola acción. [ 28 ] [ 29 ]

2019 (VB 16.x)

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

Posteriormente se lanzó una actualización menor como Visual Basic 16.9 que solo agregó la capacidad de consumir propiedades de solo inicialización. [ 32 ] Esto se hizo para mantener la compatibilidad con C# 9.0 [ 33 ] según la estrategia de desarrollo actual del lenguaje. [ 34 ]

2022 (VB 17.0)

Visual Basic 17.0 habilita el atributo System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.

2026 (VB 17.13)

Visual Basic 17.13 reconoce la restricción genérica no administrada y el atributo System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute para la resolución de métodos.

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 la plataforma de compilación .NET . [ 35 ] 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, [ 36 ] 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 Visual FB Editor para FreeBasic .

Véase también

Referencias

  1. ^ "Notas de la versión de Visual Studio 2026" .
  2. ^ a b "Option Explicit y Option Strict en Visual Basic .NET y en Visual Basic" . Soporte . Microsoft . 19 de marzo de 2008. Archivado del original el 4 de abril de 2015. Recuperado 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 del original el 19 de noviembre de 2018. Recuperado el 21 de noviembre de 2018 .
  4. ^ "Se planea compatibilidad con Visual Basic para .NET 5.0 | Blog de Visual Basic" . Blogs.msdn.microsoft.com. 11 de marzo de 2020. Archivado del original el 5 de enero de 2022. Consultado el 26 de agosto de 2020 .
  5. ^ "Dotnet/Roslyn" . GitHub . 26 de noviembre de 2024.
  6. ^ KathleenDollard (6 de febrero de 2023). "Estrategia del lenguaje Visual Basic - Visual Basic" . learn.microsoft.com . Archivado del original el 31 de marzo de 2023. Recuperado el 31 de marzo de 2023 .
  7. ^ "Nuevas características en Visual Basic 10" . 3 de junio de 2010. Archivado del original el 4 de marzo de 2016. Consultado el 5 de septiembre de 2015 .
  8. ^ "Declaración de módulo" . MSDN – Centro para desarrolladores. Archivado del original el 9 de enero de 2010. Consultado el 20 de enero de 2010 .
  9. ^ "Procedimiento principal en Visual Basic" . MSDN – Centro para desarrolladores. Archivado del original el 28 de enero de 2010. Consultado el 20 de enero de 2010 .
  10. ^ "Versión en Visual Basic de 'Hola, mundo'" . MSDN – Centro para desarrolladores. Archivado del original el 11 de enero de 2010. Consultado el 20 de enero de 2010 .
  11. ^ "Centro de recursos para la migración de Microsoft Visual Basic 6.0" . MSDN . Microsoft . Archivado del original el 9 de noviembre de 2014. Consultado el 9 de noviembre de 2014 .
  12. ^ "Documentación técnica de Visual Studio 2003 retirada" . Centro de descargas de Microsoft . Archivado del original el 30 de diciembre de 2014. Consultado el 24 de julio de 2018 .
  13. ^ Krill, Paul (27 de febrero de 2009). "Microsoft converge los lenguajes de programación | Developer World" . InfoWorld . Consultado el 18 de agosto de 2013 .{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  14. ^ "Lenguaje intermedio de Microsoft" . Dotnet-guide.com. Archivado del 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" . MSDN Magazine Visual Studio 2005 Guided Tour 2006. Microsoft . Archivado del original el 15 de febrero de 2014. Recuperado el 6 de febrero de 2014 .
  16. ^ Whitney, Tyler (noviembre de 2005). "My.Internals: Examinando la función My de Visual Basic" . MSDN . Microsoft . Archivado del original el 14 de junio de 2012. Recuperado el 6 de febrero de 2014 .
  17. ^ "Novedades del Asistente de actualización de Visual Basic en Visual Basic 2005" . msdn2.microsoft.com . Archivado del 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 del 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 del original el 23 de abril de 2008. Consultado el 29 de enero de 2008 .
  20. ^ Sherriff, Lucy (22 de febrero de 2005). "Real Software critica duramente la solicitud de patente de MS IsNot" . The Register. Archivado del original el 3 de agosto de 2009. Recuperado el 6 de abril de 2009 .
  21. ^ Taft, Darryl K. (21 de febrero de 2005). "Real Software critica duramente el intento de patente de Microsoft" . eWeek . Recuperado el 6 de abril de 2009 .{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  22. ^ Vick, Paul A. Jr.; Barsan, Costica Corneliu; Silver, Amanda K. (14 de mayo de 2003). "Solicitud de patente de Estados Unidos: 20040230959" . Base de datos de texto completo e imágenes de solicitudes de patente . Oficina de Patentes y Marcas de Estados Unidos. Archivado del original el 11 de febrero de 2006. Recuperado el 6 de abril de 2009 .
  23. ^ "¿Qué demonios es "VBx"?" . 1 de mayo de 2007. Archivado del original el 25 de mayo de 2009. Recuperado el 12 de agosto de 2009. Con el nuevo DLR, tenemos soporte para IronPython, IronRuby, Javascript y la nueva compilación dinámica de VBx.
  24. ^ "Novedades de Visual Basic 2010" . Microsoft . 2009. Archivado del original el 4 de agosto de 2009. Consultado el 12 de agosto de 2009. Visual Basic se enlaza con objetos de lenguajes dinámicos como IronPython e IronRuby .
  25. ^ "Novedades de Visual Basic 2010" . Microsoft. 2010. Archivado del original el 26 de julio de 2010. Consultado el 1 de agosto de 2010 .
  26. ^ "Descargue el paquete para desarrolladores de Microsoft .NET Framework 4.5.2 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 desde el Centro de descargas oficial de Microsoft" . Microsoft . Archivado del original el 9 de enero de 2020. Consultado el 11 de enero de 2020 .
  27. ^ "Nuevas características del lenguaje en Visual Basic 14" . msdn.com . Archivado del 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 del 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 del 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 del 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 del original el 1 de septiembre de 2019. Consultado el 11 de enero de 2020 .
  32. ^ "Novedades de Visual Basic" . learn.microsoft.com . 21 de febrero de 2023. Consultado el 18 de febrero de 2025 .
  33. ^ Torgersen, Mads (10 de noviembre de 2020). "C# 9.0 en los registros" . devblogs.microsoft.com . Consultado el 18 de febrero de 2025 .
  34. ^ "Estrategia anotada del lenguaje Visual Basic" . learn.microsoft.com . 29 de mayo de 2024. Consultado el 18 de febrero de 2025 .
  35. ^ Roslyn , .NET Foundation, 13 de abril de 2019, archivado del original el 22 de febrero de 2021 , recuperado el 14 de abril de 2019.
  36. ^ "Redireccionando…" . www.mono-project.com . Archivado del original el 30 de enero de 2021 . Recuperado el 30 de junio de 2008 .
  • "License.txt en el repositorio Roslyn en 0d04884" . GitHub . Consultado el 26 de noviembre de 2024 .

Lecturas adicionales

  1. Especificación del lenguaje Visual Basic 8.0 . Microsoft Corporation. 15 de noviembre de 2005. Archivado del original el 21 de enero de 2011. Consultado el 10 de diciembre de 2010 .
  2. "Especificación del lenguaje Visual Basic 9.0" . Microsoft Corporation. 19 de diciembre de 2007. Consultado el 28 de septiembre de 2011 .
  3. Especificación del lenguaje Visual Basic 11.0 . Microsoft Corporation. 7 de junio de 2013. Archivado del original el 5 de marzo de 2012. Consultado el 22 de septiembre de 2013 .
  • Sitio web oficial
  • Blog del equipo de Visual Basic
Obtenido de " https://en.wikipedia.org/w/index.php?title=Visual_Basic_(.NET)&oldid=1357719009 "