visual studio que net importancia entre diferencia desventajas asp vb.net vb6 language-features

studio - ¿Cuáles son las diferencias entre VB.NET y las versiones anteriores de VB?



importancia de visual basic (6)

Estoy razonablemente familiarizado con las diversas formas de VB que existían antes de .NET (VB6, VBA, VBScript ...), pero todavía tengo que profundizar en The Sweet New Flavor que es VB.NET.

Por lo tanto, apreciaría mucho que alguien proporcionara un resumen rápido de las principales diferencias en el lenguaje producidas por VB.NET.


Asumiendo cuando dices vb te refieres a vb 6. Bastante grande. El Visual Basic básico no utiliza el entorno de tiempo de ejecución .net, y aunque tienen nombres similares, son lenguajes bastante diferentes. Visual Basic no está completamente orientado a objetos, pero VB.net sí lo está. El manejo de errores es muy diferente entre los dos. VB.Net ha intentado capturar bloques donde vb tradicional usa sentencias On Error GOTO. Estas son solo algunas diferencias. La lista sigue y sigue.

Aquí hay un enlace que describe el nombre de "Visual Fred" .


Hay bastantes: demasiados para enumerar, creo. Casi podría considerar VB.Net un lenguaje completamente diferente que comparte una sintaxis similar a VB. El mayor cambio es familiarizarse con las clases de .NET.


VB compila a código p o código nativo, VB.net compila a MSIL. También la sintaxis difiere un poco. Como VB.net es la ruta de actualización para usuarios y programas de VB, hay un conjunto de objetos y funciones auxiliares que hacen que mover código de VB a VB.net sea más fácil, estos objetos y funciones no se usan normalmente en programas escritos en otros. lenguajes netos.


VB.Net es una versión más nueva que utiliza el código administrado / Framework Dot Net.

VB es la versión anterior.


Oh, el horror.

Lo sentimos, pero todas las respuestas existentes son incorrectas de una manera u otra. Joel''s es en realidad el mejor del grupo, pero su pobre redacción alienta el malentendido (lo siento, Joel, ¡pero solo mira tus comentarios!):

no es posible contrastar VB.Net con VB, porque son lo mismo.

Eso es exactamente como decir que "contrastar manzanas con frutas no es posible porque son lo mismo" y, como tal, no es muy útil; especialmente porque muchas personas ( todavía ) usan "VB" como sinónimo de "VB6".

Entonces, para aclarar un poco las cosas: tanto VB6 como VB.NET son dialectos de la familia de lenguajes de Visual Basic (llamémoslo así). Su parecido es superficial en el mejor de los casos; alguien que realmente los haya usado a ambos (y no solo haya visto algunos códigos fuente) habrá notado que, aparte de una similitud sintáctica superficial, son bestias completamente diferentes. Usarlos son experiencias fundamentalmente diferentes.

El único aspecto en el que realmente se parecen entre sí (aparte de la similitud de sintaxis) es que ambos son muy adecuados para el desarrollo rápido de aplicaciones (RAD) ... al menos hasta que haya probado lenguajes dinámicos como Python o Ruby en combinación con Los marcos ágiles de GUI como Shoes. Pero incluso cuando los entornos de RAD van, hay una gran diferencia.

VB6 fue desarrollado básicamente para hacer RAD, nada más. Y en su momento, VB6 fue lo mejor en el marcado para hacer RAD, por un amplio margen. VB.NET, por otro lado, no fue seleccionado para el desarrollo de RAD, más que C #. Ambos son lenguajes de gama alta respaldados por un marco de propósito general, muy similar a Java pero con la aspiración de mejorar algunas de las fallas de Java, como su exceso de detalle al cortar una gran cantidad de código repetitivo (introducción de delegados, eventos, propiedades, sobrecarga del operador, autoboxing para nombrar solo algunas de tales características).

Y aunque VB.NET es en gran medida compatible con versiones anteriores, esto es muy engañoso. En primer lugar, ninguna persona sensata diría que C y C ++ son los mismos lenguajes solo porque muchos programas C compilan bien en compiladores C ++. Las diferencias entre VB y VB.NET son aún mayores en algunas métricas porque ningún código VB6 completo es válido VB.NET. Necesita un "asistente de actualización" automatizado para producir código .NET válido, y la experiencia ha demostrado que este asistente de actualización no es adecuado incluso para proyectos de tamaño mediano, principalmente porque su traducción literal rompe muchas pautas y suposiciones del mundo .NET.

Decir, como Kibbee, que los compiladores de VB6 y VB.NET son "básicamente los mismos" es completamente erróneo. Del mismo modo, afirmar que "el tiempo de ejecución de .Net no es un cambio en el lenguaje" pasa por alto el punto por completo. Por supuesto , es un cambio en el lenguaje. VB.NET fue construido completamente alrededor del framework .NET, no es cualquier otra biblioteca.

Él dice que

Si VB.Net estaba destinado a ser un nuevo idioma, y ​​no solo una nueva versión de un idioma antiguo, se habrían deshecho de "On Error Goto", lo que no hicieron.

- que también es engañoso. "On Error Goto" se incluyó únicamente por compatibilidad con versiones anteriores (el asistente de actualización no puede convertir el manejo de errores al estilo antiguo en el manejo de errores basado en excepciones).

Permítanme resumir el punto principal de esta publicación bastante larga para que no se pierda: al igual que Java y JavaScript, VB6 y VB.NET tienen nombres muy similares (y por la misma razón: marketing) pero esto es completamente engañoso. Hay algunas similitudes sintácticas. Aparte de eso, superficialmente y bajo el capó, son idiomas completamente diferentes .


VB.Net es solo la versión de Visual Basic diseñada para trabajar con .Net Framework. También realiza otros cambios y adiciones al idioma, pero no es posible contrastar VB.Net con VB, porque son lo mismo.

Lo que puede hacer es contrastar con VB.Net con VBA, o VB6, o VBScript, o alguna otra variante de Visual Basic. Pero VB.Net todavía ES una posible variante de VB. De hecho, si mira la parte de idioma del producto por sí mismo, ahora está llamando a la última versión VB9, con VB10 a finales de este año.

De la misma manera, no puedes contrastar "Pespi" y cola porque Pepsi es una cola, pero puedes contrastar Pepsi y Coca-Cola.

Dicho esto, el dialecto VB.Net de VB trae consigo un número significativo de cambios y mejoras en el lenguaje, incluido un verdadero soporte para los paradigmas orientados a objetos y funcionales, hasta el punto de que el código VB.Net idiomático a menudo es muy diferente del código de la era VB6 .