Tiene algo que ver ASP.NET con Visual Basic?
Solo tiene algo que ver desde un punto de vista relativo.
ASP.NET es una tecnologia (y un conjunto de librerías) para desarrollar páginas web, aplicaciones web y servicios web, y
Visual Basic.NET es uno de los lenguajes soportados para poder desarrollar (programar) esa página web, aplicación web o servicio web.
Ya que estás empezando en la programación, quizás te sirva mirarlo desde el punto de vista de un martillo y una persona, el martillo fue moldeado para martillear, esa es su función inalterable, pero el martillo lo puede empuñar un hombre o una mujer, el hombre y la mujer serían dos lenguajes distintos, y depende de que persona empuñe el martillo martilleará de una forma o de otra ...con ciertas variaciones insignificativas.
me dejo un poco liado eso de los años, que pasa que depende el año el lenguaje varía o tiene actualizaciones?
Efectivamente, la especificación del año cuando decimos "
VB2013" o "
VB2015" se refiere al año de lanzamiento de "X" version de
Visual Studio, con cada lanzamiento de esta IDE se actualizan también la forma en que se representan los lenguajes soportados por
Visual Studio, se añaden mejoras, características nuevas, etc. A todo esto súmale lo que compone la IDE y los lenguajes, por ejemplo el compilador de VB.NET y C# también se actualiza y se mejora para poder reconocer los cambios de sintaxis, etc... también se mejoran las tecnologías de .NET Framework, pero no siempre, y no todas.
Dichos cambios se ven mayormente reflejados en la sintaxis de cada lenguaje, y esto tiene un punto a favor y otro en contra; el punto a favor obviamente es que nos permite desarrollar algoritmos de una forma alternativa, en muchos casos más simplificada, y el punto en contra es que si utilizas una sintaxis basada en las mejoras de la versión 2015, por ejemplo, el código fuente no será compilable en una versión más antigua de
Visual Studio por que dichas mejoras no están implementadas así que el depurador lo interpretará como un error de sintaxis.
Si el título de un libro se refiere a "
ASP.NET 2013" o "
ASP.NET 2015" entonces se refiere a la versión de
Visual Studio 2013 o
2015, en conjunto con la sintaxis para esa versión de los lenguajes soportados para utilizar la tecnología
ASP.NETNo confundir la mención del año con el número de la build, es decir: "
VB2015" y "
VB15" no es lo mismo, de hecho "
VB15" no existe, en todo caso será "
VB14", esto lo sigue confundiendo mucha gente hoy en dia (incluso gente que se considera experta en .NET) por que utilizan esta terminología sin comprenderla correctamente, de todas formas es comprensible que pueda confundir bastante, por que un gran defecto de
Microsoft siempre ha sido implementar terminologías informáticas que siempre acaban confundiendo al personal, y las malas costumbres entre los programadores se contagian por Internet como la pólvora.
es ASP.NET 2013 o 2015 recomendado para el tipo de programas que planteo?
ASP.NET es una tecnología para el desarrollo orientado a web, no para aplicaciones de escritorio, sino aplicaciones web ...para un servidor web.
me gustaría practicar desarrollando programas como los que usan en los comercios para hacer la contabilidad, abrir caja registradora, dejar un registro en un fichero y todo eso, el caso es que no se en que lenguaje hacerlo
yo lo que quiero centrarme es en aplicaciones de escritorio
Con cualquier lenguaje soportado por la plataforma
.NET framework puedes desarrollar aplicaciones de escritorio y ese tipo de aplicaciones comerciales que mencionas, es decir:
VB.NET,
C#,
VC++,
F#,
J#, etc. Lo más común es utilizar el lenguaje
VB.NET,
C#, o
VC++, bajo la tecnología
WinForms, o
WPF.
Para el desarrollo de aplicaciones de escritorio puedes utilizar la tecnología
WindowsForms (más conocida como
WinForms) o
WindowsPresentationFoundation (más conocida como
WPF), este úlimo tiene un nivel de dificultad superior puesto que es una tecnología más completa, avanzada y compleja, y requiere al menos el conocimiento y la compaginación de dos lenguajes,
C#+
Xaml,
VB.NET+
Xaml, etc...
Si eres un programador autodidacta yo te sugiero que empieces por el camino facil con
WinForms para no agobiarte ni desesperarte (y por que además no te va a faltar de nada), y luego, si ves que quieres avanzar un paso adelante entonces siempre puedes migrar a
WPF.
De todas formas este artículo de MSDN te podría servir para orientarte un poco mejor con respecto al lenguaje y tecnología que elegir:
Saludos