Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

El fin de Visual Basic .NET ya ha empezado

Imagen ornamental: una lápida con las fechas 2001-2020 y el nombre VB.NET inscrito en ella

La semana pasada Microsoft anunció sus planes de futuro para Visual Basic .NET. Aunque el artículo tiene un tono positivo y trata de quitarle hierro al asunto, la verdad es que marca el principio del fin del lenguaje, ya que manifiesta claramente que no tiene planes para hacer que Visual Basic evolucione y se adapte a las nuevas características que se añadan en el futuro, reforzando mi tesis de hace años de que C# es el lenguaje a elegir.

Como seguramente sabes, el próximo mes de noviembre Microsoft planea lanzar .NET 5, en la que planean refundir en una sola todas las plataformas, y que en realidad es el "rebranding" definitivo de .NET Core a .NET (dale una lectura si no lo tienes claro: te interesará).

El anuncio de Microsoft dice que "soporta la estabilidad del lenguaje y mantiene la compatibilidad entre las versiones de Visual Basic entre las plataformas .NET y .NET Core", pero lo que esto quiere decir también es que el lenguaje no va a recibir soporte para las nuevas tecnologías que incluye .NET Core. Es decir, que va a permanecer estable pero estancado, congelado en el tiempo...

Sí, sé que en el anuncio dicen que, a partir de .NET 5, Visual Basic va a soportar nuevos tipos de aplicaciones en .NET Core, a saber:

  • Bibliotecas de clases
  • Aplicaciones de consola
  • Aplicaciones de escritorio con Windows Forms
  • Aplicaciones de escritorio con WPF
  • Servicios en segundo plano multiplataforma (Service Workers, terrible nombre con nada que ver con los de JavaScript en el navegador: aquí te los explica nuestro tutor Jorge Turrado)
  • Servicios Web con ASP.NET Core Web API

y hasta ahora sólo soporta los dos primeros (en .NET Core, insisto). Esto es algo estupendo, pero según Microsoft, se ha hecho con el objetivo de "ofrecer una buena ruta hacia adelante para aquellos clientes que usan VB y que quieren migrar sus aplicaciones a .NET Core". Es decir, esto es una manera de suavizar el golpe y dar tiempo para que puedas migrar algunas cosas a .NET Core / .NET 5, pero no una vía de futuro, ya que al mismo tiempo dejan claro que "En adelante, no tenemos planes de evolucionar Visual Basic como lenguaje", para más adelante añadir "Futuras características de .NET Core que requieran cambios en el lenguaje puede que no estén soportadas por el lenguaje".

Dado que .NET se incluye en el sistema operativo desde hace décadas, dejan claro que, mientras Windows esté soportado, .NET "tradicional" también estará soportado, así como Visual Basic. Esto es genial y da una garantía de futuro para el desarrollo con .NET tradicional en Windows, pero tampoco dejan lugar a dudas cuando dicen que Visual Basic (y .NET tradicional) no van a evolucionar más. Así que, a medida que la tecnología avance, y las necesidades de los desarrolladores cambien, no habrá una buena ruta de migración desde Visual Basic a .NET Core / .NET 5.

ACTUALIZACIÓN FEBRERO 2023: Microsoft ha vuelto a sacar una actualización sobre su estrategia con los lenguajes, en la que afirman que todo sigue igual. A raíz de esta sacaron también un artículo con comentarios concretos de qué significa eso para Visual Basic. La conclusión .nada ha cambiado y VB queda para tecnologías "Legacy" aunque puede interoperar con C# (por supuesto), pero no va a evolucionar ni va a estar soportado en nuevas cargas de trabajo. O sea, que todo lo escrito hace 3 años sigue siendo igualmente válido 🤷🏻‍♂️

Si desarrollas en Visual Basic vas a poder seguir haciéndolo durante mucho tiempo. No obstante, mi recomendación sería que mantengas las aplicaciones actuales para Windows en Visual Basic .NET si ese es el lenguaje que utilizas, pero que aprendas C# y .NET Core, y te cambies a ese lenguaje para todos los proyectos nuevos que desarrolles. Esa es la garantía de futuro.

José M. Alarcón Aguín Fundador de campusMVP, es ingeniero industrial y especialista en consultoría de empresa. Ha escrito diversos libros, habiendo publicado hasta la fecha cientos de artículos sobre informática e ingeniería en publicaciones especializadas. Microsoft lo ha reconocido como MVP (Most Valuable Professional) en desarrollo web desde el año 2004 hasta la actualidad. Puedes seguirlo en Twitter en @jm_alarcon o leer sus blog técnico o personal. Ver todos los posts de José M. Alarcón Aguín
Archivado en: Lenguajes y plataformas

Boletín campusMVP.es

Solo cosas útiles. Una vez al mes.

🚀 Únete a miles de desarrolladores

DATE DE ALTA

x No me interesa | x Ya soy suscriptor

La mejor formación online para desarrolladores como tú

Comentarios (37) -

adolfo vanegas
adolfo vanegas

Hola, gracias por esta información. Aun tengo dudas, todo esto es tan abrumador a veces, tu no terminas de aprender algo cuando ya Microsoft te cambio toda la forma de programar. Te pregunto algo, yo tengo un sistema hecho en VisualBasic  que ha ido evolucionando según las versión 2012, este año decidí pasarla a 2019, esto quiere decir que mejor debería reescribir todo el código en C# para escritorio o pasarlo a Net Core que no solo deja de ser escritoiro sino ambiente Web.

Te agradecería tus comentarios

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola Adolfo:

Bueno, aquí hay dos cosas diferentes.

Por un lado tienes el lenguaje. Visual Basic va a seguir estando soportado mucho tiempo (seguramente siempre) y además podrás seguir programando con él. No creo que sea conveniente en absoluto tratar de migrar el código a C#. De hecho se pueden mezclar en el mismo proyecto varios lenguajes de .NET, por lo que podrías empezar a programar en C# en el mismo proyecto y seguir ampliando tu aplicación usando C#, de modo que poco a poco vayas acostumbrándote y aprendiéndolo.

Por otro lado esta la conveniencia de migrar a .NET Core o no. Una aplicación que tiene tiempo (y encima es de escritorio) como la tuya no creo que sea la mejor idea. De hecho ni siquiera la propia Microsoft recomienda migrar aplicaciones grandes de .NET a .NET Core. Y por otro lado el hecho de migrar a .NET Core tampoco tiene nada que ver con el hecho de que sean aplicaciones Web o no. En .NET clásico puedes hacer aplicaciones web estupendas y si quisieras hacer que parte de tu aplicación funcionase en la Web podrías hacerlo en .NET "clásico" sin ningún problema y probablemente aprovechando mucho código (dependiendo de cómo esté desarrollada la aplicación y qué arquitectura utilices).

En mi opinión lo que todo desarrollador .NET debería hacer es ir aprendiendo .NET Core y, si trabaja con VB.NET, ir poco a poco programando todo lo nuevo que haga en C#. .NET Core es el futuro (y ya el presente) del desarrollo en .NET, y C# es sin duda el lenguaje principal a utilizar, aunque eso creo que lleva años muy claro aunque a algunos les cueste aceptarlo  (www.campusmvp.es/.../...enguaje-debo-aprender.aspx)

Espero haberte ayudado.

Saludos.

Responder

Carlos Aparicio
Carlos Aparicio

Existe software que te transforma proyectos completos desde VB a C.

Responder

Lo interesante de esto es que si bien lo que dices es completamente cierto, también lo es que los que desarrollamos en VB.NET tenemos esa opción de migrar a C#, al ser del mismo .NET, prácticamente la sintáxis básica es la que cambia pero las propiedades de los objetos casi no.

Tengo conocidos desarrolladores en lenguajes tan obsoletos como Borland Delphi 5. Y viven de eso, y prácticamente ahí seguirán. Por lo que pienso que no es tan grave esta situación. Podemos seguir y seguir con vb pues al cliente final no le interesa el lenguaje sino las funciones, y por ejemplo aquí en México los servicios de timbrado fiscal por ejemplo tienen librerías compatibles con .NET, sería como que lo mas delicado, lo demás pues no es tanto problema.

En efecto, una forma de estar mas al día es migrar a C# que tiene mas futuro, pero igual si nos quedamos en VB, creo que estaremos bien, es decir, tampoco se va a prohibir.

Excelente artículo, José Manuel. Todo muy claro y bien explicado.

Responder

José Manuel Alarcón
José Manuel Alarcón

Totalmente de acuerdo, de hecho lo digo también en un comentario anterior de este post: www.campusmvp.es/.../...ic-net-ya-ha-empezado.aspx

Se pueden compaginar ambos, pero el futuro es C#.

Hay mucha gente programando en lenguajes en teoría obsoletos pero que siguen dando muchas alegrías (sino que se lo digan a los de COBOL) pero la cuestión está en que si te vas a plantear crear proyectos nuevos y en tener una carrera a largo plazo con mayores posibilidades de crecimiento y movimiento lateral, es mejor apostar por lenguajes y plataformas más modernos. No sabemos qué nos depara el futuro (sino mira en la que estamos ahora con el COVID), y en tecnología tampoco. No sabemos si saldrán dispositivos nuevos que dejen obsoletos a los actuales y que se programen con lenguajes y paradigmas nuevos, por lo que estar un poco al cabo de la calle con la tecnología suele ser buena idea.

Saludos!

Responder

En México muchas empresas usan .NET, y además mayormente tienen código en VB.NET. Y usan .NET Framework clásico, sin que parezca que deseen cambiar a .NET CORE. Así que en general puedes seguir programando VB.NET y pues aprender C#, yo conozco algo de C# pero en verdad disfruto mucho más programando en VB.NET. Pero puedo traducir de un lenguaje a otro, sin problema.

Responder

Si, precisamente estuve migrando algunas cosas a C#, a raíz de este artículo; pero encontré muchas complicaciones, por ejemplo, cuando estas en un Form, y quieres afectar otros forms, en VB solo pones Form1.Textbox desde el Form2, y pues C# no, hay que crear instancias y varias cosas, que me desalentaron, no por que sean demasiado complejas, sino que creo que son complicaciones innecesarias, para llegar al mismo resultado.

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola Rafael:

En realidad eso no es necesario: se hace exactamente igual que en Visual Basic, ya que por debajo lo que hay es .NET y por lo tanto funciona de la misma manera. Seguramente tendrá que ver con el ámbito de tus formularios, de cómo están instanciados que quizá no ves uno desde el otro, pero funcionar, funcionan exactamente igual.

En cualquier caso, incluso aunque no fuese así, el futuro es claramente C# y deberías aprenderlo. Si vas a seguir creando apps con Windows Forms en .NET tradicional puedes seguir usando VB.NET sin problema, que el soporte no desaparece, pero si quieres ir al futuro de .NET, entonces el futuro es C#.

Si quieres aprenderlo BIEN y no con alfileres, entendiendo bien lo que aprendes, ya sabes 😉 www.campusmvp.es/.../....NET-Core-3-y-C-8_242.aspx

Saludos!

Responder

No confundir obsoleto con popular, Delphi tiene versiones actuales y el mismo código del año 95 podés compilarlo tranquilamente para android, ios, windows, linux o macOs. El hecho de tener muchos años no te hace obsoleto de por sí.

Estoy de acuerdo en eso de mantenerse actualizado, pero muchas tecnologías aparecen y se van, yo valoro mucho la idea de no reescribir código. Recordemos que en época Delphi estaba un paso delante de visual basic y por alguna razón mucha gente de borland incluyendo al creador de c# Anders Hejsberg, está ahora en Microsoft. De hecho él (Anders) está dedicado al typescript actualmente, lo que sugiere la idea que dotnet va a perder fuerza frente a typescript, que es lo único realmente multiplataforma al estar basado en javascript, luego de tantos años de promesas.

Responder

José Manuel Alarcón
José Manuel Alarcón

Buena distinción Anton.

Saludos.

Responder

Alvaro García
Alvaro García

Muy bueno el artículo.

En mi experiencia, en 2004 empecé a escribir mi proyecto comercial en VB 6.0. Lo estuve comercializando por partes y quizás pude tenerlo completo en 2008. Todo este tiempo estuve facturando con ese proyecto. Recién en 2020 me decidí a escribirlo nuevamente en Visual Basic 2019. Siempre estuve con ganas de hacerlo pero me costaba el paso de ADO totalmente con código (con el cual estaba muy cómodo) a ADO.NET.  Con esto del Covid me tomé el tiempo de sentarme a entenderlo y ya he escrito todas las clases que necesito para que me sean sencillas las consultas y operaciones en las bases de datos. He visto la diferencia en la eficacia de las conexiones, eso sí me gustan todas las operaciones en las bases de datos por código y así procuré hacerlo en mi nuevo desarrollo.

En conclusión seguiré manteniendo a los clientes con los proyectos de VB 6.0 y empezaré a ofrecer mi nuevo proyecto apenas lo termine, que con suerte será pronto.

Ahora veo que será más fácil quizás aprender C# pero por ahora no lo veo necesario, lo primordial es explotar mi conocimiento del lenguaje para terminar el o los proyectos que se vayan dando.

Responder

Es triste que se abandone VB.NET su sintaxis me parece mas limpia que la C# (aunque no es más concisa, eso es cierto). Pero aún se puede hacer mucho con él, incluso para .NET CORE actualmente solo la parte web de vistas Razor no esta soportada, por eso planean dar soporte para WEB API (no usa vistas).

Responder

Hola a todos!  No sé si me van a responder por aquí, pero me encantaría que sea bien pronto.  Leí el artículo diciendo que Visual Basic muere por decisión de Micro$oft, justo cuando tengo muchas ganas de volver a programar con el idioma que me encantó por lo simple, directo y divertido que es.  

En los comentarios, dicen ustedes que se puede conservar VB... eso espero... ¿podré seguir creando cosas para siempre?  

Una de las cosas que más amo de VB es que me disparaba la imaginación.  Y recuerden que soy una persona grande ya.  

Pero también estaba pensando en cómo encontrarle la vuelta para programar con el maravilloso VB una página web... ya sé que es idioma de aplicaciones no web, pero siempre quise crear algo divertido con ese idioma y online, una aplicación web.  

Siempre vi a C y C# como idiomas muuuy complicados, de una curva de aprendizaje muy jodida como una montaña rusa con la cual vomitas desde lo alto a la gente.  

Si, ya sé, un poco gráfico, pero es para ilustrar mis sentimientos hacia lo complicado.  

Aparte, hace muuucho tiempo que no programo nada pero siempre hay ganas y más cuando me acuerdo de VB.  

No soy profesional ni vendo programas, siempre lo hacía antes como un pasatiempo y para ejercitar las neuronas, programar es como el ajedrez y te puede evitar la senilidad de la vejez.  

En fin, envío mis más sinceros y cariñosos saludos a todos, espero que me garanticen que se puede seguir con VB, diga lo que diga una empresa que tiene tantos tentáculos como Disney.  

Un abrazo grande y nos leemos!  

Octavio
Argentina

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola Octavio:

VB no desaparece y siempre estará soportado en .NET "clásico" 4.8, que además viene con Windows y su soporte no va a desaparecer debido a eso. Pero como digo en el artículo no va a evolucionar y las nuevas tecnologías y funcionalidades de la plataforma pasarán por C#. Ahora bien, sigue siendo un lenguaje útil con el que se pueden hacer muchas cosas incluyendo la parte de servidor del desarrollo Web.

Por otro lado no estoy de acuerdo en que C# sea complicado. Es idéntico en casi todo a VB sólo cambia la sintaxis que no deja de ser más que "cosmética", pero por lo demás, no hay grandes diferencias. Si aprendes a programar para .NET lo complicado es la plataforma y sus conceptos. el lenguaje es casi lo de menos. Eso sí, las nuevas funcionalidades avanzadas, que sí pueden ser más complicadas, vienen para C#.

Saludos.

Responder

Mil gracias por tu respuesta!

Pregunto:  

Si dices que C# es prácticamente igual a VB,  ¿puedo hacer una página web con VB, al menos, en parte, o como VB, usando controles de la barra de herramientas de Visual Studio?  Y usando winforms? porque con programar visualmente es mucho más fácil para mí.  O sea, viste que con arrastrar y soltar, acelera mucho todo el proceso y te dispara la imaginación.  

En fin, voy a seguir investigando en internet, pero espero tus aportes a mis preguntas.  Aprovecho para hacerte una más y no molesto más (jaja):  

Si programo una página web en C#,  tengo la página principal, pero quiero abrir una ventana -sin salir de la página principal- al hacer clic en un botón de la página principal, como si fuera un programa,  ¿cómo se hace eso?  

Es que hace bastante tiempo he visto un documento de un sitio web de gestión documental electrónica y es impresionante... hacés clic y se abre una ventana, como si fuera un programa pero sin salir del "escritorio" de la página web principal, que es de un usuario, por caso.  

En VB programando un programa tradicional, hago MDI, pero la idea es hacer lo mismo pero en versión web.  ¿Me explico?  

Además, para trabajar voy usar el querido Visual Studio que es una maravilla.  

Bueno, te dejo pensar y espero tus comentarios.

Un abrazo!

Octavio

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola:

La respuesta ala primera pregunta es que sí: da igual el lenguaje que uses. Ahí estás usando el framework.

En cuanto a la segunda, eso es Front-End necesitas usar HTML, CSS y JavaScript para lograr algo así. Todo lo que sea en el navegador se hace con eso y debes aprenderlo para desarrollo Web.

Saludos.

Responder

Si VB.NET desaparece y solo queda C#, la primera consecuencia es que la capa de lenguaje intermedio también desaparece, puesto que su función es traducir a MSIL todos los lenguajes NET y desde ahí a código máquina, no tiene sentido hacerlo para un solo lenguaje. Hablamos de un cambio que trastocaría toda la filosofía NET, que fue creado para ser transparente a múltiples lenguajes de desarrollo, pero que tras años en vigor en vez de incorporar lenguajes nuevos habría ido fumigándolos hasta volver al punto de partida: un compilador un lenguaje, lo cual no deja de ser curioso, sobre todo teniendo en cuenta que Microsoft nunca abandonó del todo la tecnología COM.

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola Joseba:

VB no desaparece. Simplemente no evolucionará mucho más.

De todos modos tu razonamiento no es válido por muchos otros motivos. En primer lugar hay muchos otros lenguajes en .NET aparte de VB y C#. Sin ir más lejos F#, el tercero de Microsoft y que es ampliamente utilizado, pero hay muchísimos más: en.wikipedia.org/wiki/List_of_CLI_languages

Además de eso, el lenguaje intermedio no se utiliza para poder tener varios lenguajes por encima de la plataforma, sino para tener un lenguaje independiente del sistema operativo, algo que hacen muchas otras plataformas como Java y, sin ir más lejos, también hacía Visual Basic clásico en los 90 con su famoso p-Code. Por lo tanto no se va a abandonar nunca, por eso puedes estar tranquilo 😉

Saludos.

Responder

Estoy de acuerdo.

VB es sencillo de aprender y por ello muy defendible y seguira utilizándose sobre todo en Excel. Aunque con VSTO desde Net se puede mejorar bien con C#.

La programación pasó a ser de los C/C++,. Y con la influencia a otros Java, C#, JavaScript.

JavaScrip un derivado de C/C++ y no de java como algunos creen, domina la web combinado con HTML y CSS.

C# es buena opción, es un Java mejorado. C++ lo veo siendo muy enfocado por Microsoft y actualizan super rápido los cambios de los estándares y además sigue siendo el más potente y referente en la programación actual que es orientado a games.

Java está en pleno declive y es que Oracle no le dio más avance y C# está mejor corregido.

Python se plantara y quedará como lenguaje de ciencias junto a R, Matlab, etc.

Luego está el resto.

Responder

Les comento que tengo 57 años y programo desde los 24 cuando me recibí de Analista de sistema. Ya he pasado por estos cambios en varias oportunidades desde el Basica y RMCobol hasta la fecha, y si hay algo que tengo muy claro es que la tecnología avanza y para los que estamos en este tema debe ser algo tomado con naturalidad, No hay que tener miedo a conocer nuevos paradigmas de programación o nuevos sistemas ya que aprender te lleva toda la vida y también es una forma de mantenernos con vida.
Estoy de acuerdo a que incluso en mi caso, sigo actualizando algunos sistemas que estaban escritos en por ej. VB 6 y que funcionaban bien y estaban probados, porque en realidad a nuestros clientes lo que les importa es que la cosa funcione y que no les de dolor de cabezas, pero en cuanto puedo voy trasladando a nuevos sistemas como C# que me facilitan mucho el desarrollo y por sobre toda las cosas la comunidad en internet es muy grande, así cuando tengo dudas el señor google me facilita la cuestión.
Seguramente Vbasic va a tener rollo para rato pero les recomiendo desde mi experiencia que vayan migrando despacio a otras tecnologías, aunque al principio parece tedioso, y como escribió alguien no terminas de aprender algo que ya te lo cambian, es lo que nos toca.

Saludos desde Argentina.

Responder

Si correcto hay que actualizar. ,  en su experiencia ud ve que C++ tiene varias vidas, sigue siendo un referente y Microsoft lo vive actualizando en VS.

No todas las tecnologías caducan, VB fue un caso extraño, porque para mí y varios era una belleza de lenguaje y con buen IDE.

Responder

Hay mucho código funcionando aún en ese lenguaje y tenemos una oportunidad de oro. Si Microsoft da carpetazo a los 32 bits todo ese código deberá ser migrado o recompilado en 64. Yo estoy siguiendo de cerca dos proyectos: RAD Basic y Twin Basic. Twin Basic parece tener muy pulido el entorno de programación pero no tiene GUI, es decir no se pueden hacer pantallas, en cambio RAD Basic quizá está un poco por detrás en cuanto a desarrollo pero avanza a la par en la compilación de código y la interfaz gráfica. Falta poco para tener una Beta funcional y creo que hay que darle una oportunidad. En cuanto a MIcrosoft, no creo que publique su compilador 64 bits para vba/vb6 pero... nunca se sabe.

Responder

Que tal Miguel. Coincido con joseba que C++ todavía tiene mucho para dar. Además de ser utilizado generalmente como base para el aprendizaje de programación orientada a objetos, hay una comunidad muy grande mas allá de MIcrosoft que sin duda le va a dar vida por mucho tiempo.

Responder

Gracias Carlos por el aporte. No solo es que lo usen como herramienta de aprendizaje, también de desarrollo. Recuerda que Office sigue usando tecnología COM (C++) internamente y que su lenguaje de macros sigue siendo VBA, es decir Visual Basic clásico (que curiosamente compila en 64 bits y de ahí mi convicción de que dicho compilador existe y de que, si no lo han publicado hasta ahora, es simplemente porque quieren forzar el uso de .NET).

Sin embargo si algún entorno alternativo permitiese compilar vb clásico en 64 bits y un número significativo de desarrolladores decidiese volver a usarlo (13 años no son nada, debe haber millones de personas que controlen el lenguaje), MS podría cambiar de estrategia y publicar su propio compilador con un entorno actualizado.

Responder

Cristian Luis
Cristian Luis

Jose Manuel Alarcón parabéns pelo excelente artigo!

Realmente o comunicado da Microsoft (devblogs.microsoft.com/.../) deixou muitos programadores (Profissionais e Amadores) tristes e confusos.

Nós da comunidade (https://gitter.im/VB-NET/Language) temos um outro pensamento quanto o futuro do VB.Net, a princípio o desenvolvedor VB.Net nunca absorveu a cultura de comunidade com contribuições e compartilhamento de códigos apesar de existir centenas de milhares de desenvolvedores, na verdade a maioria dos desenvolvedores VB são pragmáticos e orientados para aplicativos, isso se dá porque o desenvolvedor acostumou com a construção do dialeto que sempre foi proprietário, diferente de C# e F#, o que força todo o investimento no desenvolvimento do VB por conta da Microsoft. No VB.net de hoje já temos uma comunidade bem diferente com muitas participações e solicitações de Pull, mudar a mentalidade de quem não tem por hábito em contribuir é um processo de longo prazo.

Outras características que também consideramos é que:

* Nos últimos anos a Microsoft não vem fazendo um bom trabalho na evolução do dialeto, na maioria das modificações o resulto foi prejudicial;
* Não evoluir o dialeto não é verdadeiramente um problema, o VB alcançou a maturidade e estabilidade isso é positivo porque o dialeto não irá mudar simplesmente para atender uma manobra de ROI ou modismo. Um exemplo C++ é um dialeto resistente a mudanças de seis por meia dúzia;
* A estratégia de não desenvolver o dialeto pode ser considerada uma estratégia positiva pois estimula que a comunidade seja ativa de verdade e ainda ajuda na redução de custos da Microsoft, Isso já é uma realidade em nossa comunidade ( no final do comentário vou deixar um texto que escrevi para várias comunidades VB e grupos no Facebook para VB.Net.
* Até o momento para .NET5 não foi necessário nenhuma solicitação de evolução do idioma e sim apenas projetos para que o VB seja acessível aos novos recursos;
* De qualquer forma já nos antecipamos em um projeto chamado Mercury (https://www.elementscompiler.com/elements/mercury/ ) está em fase inicial, mas aqui o VB.Net ganha muitas outras possibilidades;
* Iremos tentar manter o VB.Net em primeira classe no .Net e com certeza em Mercury, Mercury ainda não grátis mas em breve será.

A escolha de uma linguagem preferida não é apenas baseada em popularidade e no que o modismo indica, o dialeto VB vem de um outro tronco que encanta o desenvolvedor e dá conforto, assim também acontece com os dialetos derivado de C, o desenvolver também se sente confortável com a sintaxe, portanto, sempre haverá quem não se identifica com os filhos de C e se identifica com o VB e vice e versa.

Não se preocupem o VB,net pode ser que não evolua na Microsoft mas em Mercury ele terá sempre uma vida longa!

Veja nossa notificação...

Good news for you DEV VB.NET !!!
Hello Professional Developers, Amateur Developers, Passionate and Students for our wanted and loved programming language VISUAL BASIC.NET.
My name is Cristian Luis and I am an eternal student of VB.net.
The purpose of this circular is that VB.NET has just won a fantastic quartet with the objective of keeping the dialect always evolving and compatible with new technologies, now VB has a team that will take care of our favorite dialect with love and great affection.

Who are our main warriors?
* Anthony D. Green - @AnthonyDGreen
* Cory Smith -  @DualBrain
* Mohammad Hamdy Ghanem - @VBAndCs
* Paul M Cohen -  @ paul1956

Where are we?
https://gitter.im/VB-NET/Language?source=orgpage

What are the objectives of this community?
Although Microsoft announces that it will no longer develop the dialect at (devblogs.microsoft.com/.../) we announce that we will now continue the development of VB.NET at:
* Keeping compatible and accessing .NET 5 features in your updates and news.
* Maintaining high-level interoperability with C # and F # dialects
* CSharpToVB Converter
* Community.VisulalBsicRuntime
* Vazor
* Standards-based XML literal prototypes with links to repos

Where do you get into all this?
All of you developer, and student can help us in the following way:  
•  Visiting here (devblogs.microsoft.com/.../) and leaving a positive message for VB
• By signing up here (https://gitter.im/VB-NET/Language?source=orgpage) and leaving a message saying “where should I go to vote?”, You will be informed of the links at (https://github.com / dotnet / vblang) so you can go and vote, but if you also want to contribute with opinions and projects you will be very welcome

• Pass this information on to another person who also LOVES VB.NET and ask them to do the same.

Why should I vote?
We never have an EXTERNAL team responsible for helping the evolution of VB, with this opportunity we just need to show Microsoft and the DotNet and Roslyn team that our actions are being well received and supported by the VB.NET developers, so we really need your participation. with the votes.

I look forward to having approximately 3,000 positive messages for VB here (devblogs.microsoft.com/.../)
and many votes on the projects that constantly we will present here (https://gitter.im/VB-NET/Language?source=orgpage)
Thanks to everyone
“I am VB.NET” 😉

Responder

Hola, excelente el artículo y muy útiles los comentarios. Yo tengo una aplicación web en VB.NET, la subí a Azure (versión gratuita) y es imposible que funcione. Esto es: las páginas .aspx se ven y la base de datos se creó bien en Azure (las queries corren bien), pero la aplicación no se conecta a la base de datos (cuando uno hace click en un botón que realiza una query en la base de datos, aparece el maligno error 26). Seguí toooooda la documentación de Microsoft y nada, no pude solucionar el problema de conexión. Por supuesto que el proyecto funciona bien en Visual Studio ("en mi máquina funciona", jeje). ¿Será por lo que explicás en este post? ¿Será que Azure "no se lleva bien" con VB.NET?

Saludos a todos

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola Griselda:

VB.NET se lleva perfectamente con Azure, No hay problema alguno. Tiene que ser un problema con la comunicación entre la aplicación y la base de datos.

Ese error se produce cuando la aplicación no puede localizar el servidor SQL Server al que debe conectarse. Esto suele ocurrir si no tienes bien configurada la conexión a la base de datos (la connection string) en tu web.config. Comprueba que está y es la correcta.

Pero esto te pasaría exactamente igual con C# o cualquier otro lenguaje. Nada que ver con VB.

Por cierto, aquí te dejo mi eBook gratuito sobre Azure Web Apps: u.pcloud.link/.../show

Saludos.

Responder

Hola José Manuel,

ah, entonces descarto esa hipótesis, jaja.

Si; he chequeado y rechequeado la connection string en el web.config. Pero el error persiste...

¡Muchas gracias por el ebook! Lo voy a estudiar en detalle.

Nuevamente, excelentes tus posts.

Saludos a todos

Responder

En el año 1980, recién llegue a la oficina cuando en mi escritorio se encontraba ya, desde temprano en la mañana, la revista BYTE, de la cual teníamos una suscripción. Quite el celofán que le envolvía y la abrí en una pagina al azar y allí estaba la noticia: "DBASE ANUNCIA LA MUERTE DE BASIC", para Ashton-tate y su desarrollador Wayne Ratliff, basic estaba sentenciado a muerte... cosa que en mas de 42 años no ha sucedido, no vaya a ser que estos anuncios caigan en la misma red de ese entonces.  Eso hizo que algunas empresas que desarrollaban y le prestaban soporte al lenguaje básicamente lo abandonaran, pero hubo otras que continuaron y adquirieron aquellos desarrollos abandonados para formar nuevos estándares del lenguaje, Es así como Microsoft desarrolla Visual Basic 1 proporcionándole un giro bestial al asunto y cuyo ascenso vertiginoso va de la mano con las versiones , 2, 3, 4, 5 y 6 ; hasta su cúlmine cuando Microsoft la une a varios lenguajes mas en una fabulosa plataforma denominada NET (. Si, es cierto, desde que Ritchie admitió haber cometido algunos errores y bajezas (sintácticas, semánticas y semióticas) en la creación del lenguaje C, deje de lado mi entusiasmo por el referido concentrándome en Pascal y Basic. Ok, entonces de suceder algo similar a lo relatado por ustedes no me quedaria otra que migrar a Real Basic o Xojo, pero C... lo dudo. Con basic fueron creados Word, Excel, Power Point, Las primeras versiones de base de datos de Microsoft (Access, y los inicios de SQL Server) ... y resulta que ahora ya no sirve.... Que cosas no?


Un saludo a todos

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola:

Como ya he dicho reiteradamente, no es que VB.NET desaparezca, sino que [n]no va a evolucionar más como lenguaje[/b]. .NET 4.8 "clásico" va a seguir para siempre en Windows por lo que siempre funcionará ahí lo que hagas con C#, VB.NET o cualquiera de los 20+ lenguajes que soporta .NET.

Ahora bien, si hace 15 años empezabas a programar, te habías decidido por .NET y debías elegir un lenguaje que aprender, elegir VB.NET era una buena opción pues a todos los efectos estaba igualado con C# y Microsoft sacaba las mismas características siempre para ambos. Si ahora en 2021 apuestas por .NET y debes elegir un lenguaje ¿elegirías VB.NET? Sería un grave error pues literalmente todo lo nuevo desde hace años Microsoft lo desarrolla en C# y todas las características nuevas de lenguaje se añaden a C# y no a VB.NET. El anuncio al que se refiere mi artículo simplemente constata oficialmente por parte de Microsoft algo que ya hace años que se sabía.

Yo empecé con VB hace más de 25 años, y adoraba el lenguaje y el entorno, pero las cosas han cambiado mucho desde entonces. De hecho, cuando salió .NET el único motivo de meter VB.NET fue "captar" a todos los programadores de VB6 y que no fuera un cambio tan gordo, sino estoy seguro de que Microsoft no lo hubiese metido nunca. Pero en el fondo era un engaño: lo importante no es el lenguaje, sino la plataforma, y aprender .NET es lo "duro". Lo otro es mera cuestión estética y de gustos... O así era hasta que empiezan a meter cuestiones avanzadas para el compilador de C# que solo implementa este compilador. Yo, de hecho, cuando salió .NET tenía claro que era mejor tirar por C# ya que ni siquiera la sintaxis de VB.NET era igual a la de VB6 y por lo tanto al final acababas confundiéndote más dado que trabajas con ambos.

¿Que alguien se empeña en aprender VB.NET hoy en día? Pues buena suerte, es lo que puedo decir. ¿Qué quieres empezar a programar con .NET Core o .NET 5? Pues no te queda otra que usar C# en la mayor parte de los casos.

Mejor lo vemos con un símil: ¿COBOL está muerto? Pues no. Se sigue usando y hasta hay falta de programadores en este lenguaje para mantener los vetustos sistemas de bancos, aseguradoras y otros dinosaurios. ¿Quiere decir esto que sea un lenguaje a aprender en general,  que vayas a utilizar para crear algo nuevo o que le recomendarías a alguien que empieza como opción de futuro? Sin duda: no. Pues con VB.NET pasa más o menos lo mismo. Este es el resumen. Todo lo demás es hablar del sexo de los ángeles.

Así que, en ese sentido VB.NET está muerto o, más allá del titular provocador que elegí para este post, VB.NET está zombie: sigue caminando pero sin vida ni perspectivas.

Comprendo que cuando uno ha dedicado muchos años a un lenguaje o a una plataforma fastidie tener que cambiar, pero el cambio es la única constante en nuestra profesión y al que no le guste debería dedicarse a otra cosa.

Saludos.

Responder

Cristian Luis Teixeira
Cristian Luis Teixeira

sinceramente para mim o Legado é a própria Microsoft, as incertezas de anos como o Foxpro, VB6 e VB.net e outros mostra como é arriscado investir em um empresa que busca somente o ROI, claro que não poderia ser diferente pois a Microsoft foi criada para ganhar dinheiro, mas vejo toda a fragilidade que possa ocorrer com os produtos da Microsoft.
A mudança é necessária realmente, mas nos últimos tempos ou elas são seis por meia dúzia ou são mudanças para atender um determinado nicho.
Hoje prefiro apostar mais na B4X do que na própria Microsoft.      

Responder

Uchales, yo programo en Visual Basic.Net, ya nos mataron de buenas a primeras Visual Basic 6 y tuve que adaptarme a la fuerza a VB.Net, ahora quieren hacer lo mismo con VB.Net, mmmm.

Responder

Y a se veia venir desde hace mucho  pero algunos nos negabamos aceptarlo......no evolucionar el lenguaje es igual a a  matarlo, porque pasa el tiempo y aparecen nuevas tecnologias  y el lenguaje queda como un jueguete que solo puede hacer cosas de hace 10 años, un ejemplo machine learning  solo es   soportado por csharp y no  vb.net,  si quiero hacer algo con esta tecnologia tengo que aprender csharp a fuerzas, y asi como esta tecnologia vendran mas, los que nos quedemos con el vb net solo haremos proyectos de eras pasadas, supongamos estamos en 2030 y ahora ya es programar solo para el metaverso vb net seria inservible y todo programador estara obligado a csharp u otro lenguaje actualizado.
lo mejor  es dejar los proyectos ya hechos en vb net  e ir aprendiendo el csharp poco a poco y proximos proyetcos importantes hacerlos en este lenguaje.(veo que algunos comentarios en este post confunden al vb clasico y creen que hablan de este aqui) vb6  este si estara peorya que viene la era de 64 bits y procesadores modernos intel donde no dejaran ya instalar windows7 o xp donde corre vb6, la unica manera de manipular codigo vb6 seria atraves de una maquina virtual y esto creo que lo usarian solo estudiantes de escuelas donde les enseñan a programar aun con vb6.-----lo de la nube y net core se me hace  aun de poco uso, para esto mejor migro a php con css bootstrap. lo de tener todo en la nube me imagino es para controlar mejor a los crackers. desde el 2008 programo con vb net pero llego la hora de ir rasgando un poco csharp

Responder

Si bien, siempre windows se ha tratado de deshacer de nosotros no podra, asimismo dijeron visual basic 6, pero tuvieron que incluir de todas maneras el visual basic.net por que de otro modo migraremos a python u otro entorno mas amigable y que no nos obligue a aceptar sus terminos o nada.

Por otra parte me siento orgulloso de ser de la generacion que programo en vb 4, vb5 y el irremplazable visual basic 6.0 amaba ese sistema y de hecho aun me encuentro programadores en ese entorno. pero la mayoria somos dinosaurios
Aun asi me siento orgulloso por que me desarolle sin manuales y el unico curso decente que habia en español era el guille. y nadie lo explicaba o cuando explicaba parecia a los cursos de cocina por la tele "mire sacan la carne del congelidor y listo aqui tienen su buena salsa con asado. jajajajaja. Pero bueno, somos de los que no esperamos a alguien haga un curso para desarrollar nuestras apps nosotros somos los que liderabamos el conocimiento. saludos y exito

Responder

Alejandro García
Alejandro García

Pregunta, ¿por qué es recomendable aprender C# y .NET Core habiendo muchos otros lenguajes que se trabajan muy bien, son de código libre y son es tan complicado para desarrollar  como lo es C#? o por lo menos para mi, a veces se complica mucho hacer algo que en otros lenguajes es muchisimo más sencillo.

Si me pueden ayudar con una explicación para dummys mucho mejor.

Responder

José Manuel Alarcón
José Manuel Alarcón

Hola Alejandro:

C# y .NET (ya no lleva el apellido "Core" como plataforma) es una opción más, pero es una opción interesante fundamentalmente por que tiene mucha demanda laboral. te permite crear todo tipo de aplicaciones (web, escritorio, móviles, cloud, videojuegos...), te permite hacer desarrollo multiplataforma, ofrece una escalabilidad y rendimiento muy grandes, es open source y gratuito, y tiene una comunidad enorme detrás para ayudarte. Esto mismo se puede decir de otras plataformas como Java o Python pero, por ejemplo, NET y C# son más modernos y dinámicos que Java, y tienen mejor rendimiento que Java y desde luego mucho más que Python. También están integrados a la perfección con todo el ecosistema de Microsoft.

Como todo, decidirte por una u otra, al final dependerá de tus conocimientos previos, de tus necesidades específicas, del tipo de empresa en la que trabajes o incluso de tus filias y tus fobias. Pero .NET es una plataforma muy a tener en cuenta.

Saludos.

Responder

Alejandro García
Alejandro García

Excelente, gracias por la respuesta. No he sido muy amigo de plataformas de MIcrosoft, sin embargo, me ví en la necesitad por cuestiones laborales de estudiar algunos lenguales como lo fue en su momento Visual FoxPro y Visual Basic, luego ya me decante por Python, Ruby, Javascript y similares.

En mi empresa están viendo la posibilidad de trabjaar en .NET con C#, es más ya tenemos un aplicativo contable en esta plataforma pero no estamos muy contento con ella y pensamos en reahacerla toda. En fin, creo que me va tocar empezar a estudiar.

Saludos.

Responder

Agregar comentario

Los datos anteriores se utilizarán exclusivamente para permitirte hacer el comentario y, si lo seleccionas, notificarte de nuevos comentarios en este artículo, pero no se procesarán ni se utilizarán para ningún otro propósito. Lee nuestra política de privacidad.