Oh, el horror.
Lo sentimos, pero todas las respuestas existentes son incorrectas de una forma u otra. Joel es en realidad el mejor del grupo, pero su mala redacción alienta malentendido (lo siento, Joel - pero basta con ver sus comentarios!):
contraste VB.Net con VB no es posible, porque son la misma cosa .
Eso es exactamente como decir que "contrastar manzanas con frutas no es posible porque son lo mismo" y, como tal, no es muy útil; “VB6” sobre todo porque muchas personas (aún) utilizan “VB” como sinónimo de
modo que para aclarar un poco las cosas: tanto VB6 y VB.NET son dialectos de la familia Visual lenguaje Basic (hagamos llámalo así). Su parecido es superficial en el mejor de los casos; alguien que realmente tiene usado los dos (y no solo miró algunos códigos fuente) habrá notado que aparte de una similitud sintáctica somero, son bestias completamente diferentes. El uso de son experiencias fundamentalmente diferentes.
El único aspecto en el que realmente se parecen (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 marcos ágiles GUI como Shoes. Pero incluso cuando los entornos de RAD van, hay una gran diferencia.
VB6 se desarrolló básicamente en do 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, era no 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 no el código VB6 completo es VB.NET válido. 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 idioma. VB.NET fue construido completamente alrededor del framework .NET, no es cualquier otra biblioteca.
Afirma que
Si VB.Net estaba destinado a ser una lengua nueva, y no sólo una nueva versión de un viejo lenguaje, se habría librado de "On Error Goto" que dejase 't.
- 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: comercialización) pero esto es completamente engañoso. Hay algunas similitudes sintácticas.Aparte de eso, superficialmente y bajo el capó, son idiomas completamente diferentes.
¿Qué te hace hacer una pregunta tan amplia? Y, responderlo también? – shahkalpesh
No hay nada de malo en responder sus propias preguntas. De hecho, es alentador. Solo quieres estar seguro de que tienes una muy buena respuesta cuando lo haces, y que dejas una oportunidad para que la comunidad también proporcione su opinión. También es una buena etiqueta para SO hacer tu _answer_ (no la pregunta) Wiki de la comunidad. –
@sakthivignesh: creo que te llamó la atención un montón al escribir una pregunta tan vaga * y luego publicar inmediatamente una respuesta muy inadecuada *. En el futuro, querrás evitar esto a menos que, como señala Joel, * sabes * que tienes una buena respuesta. En su lugar, dedique más tiempo a escribir una buena pregunta ... – Shog9