Programación VB.NET en Ubuntu

16

Acabo de comenzar en la sexta forma universitaria y voy a tomar un nivel de computación. Me informaron que toda la programación en el primer año está en VB.NET en Windows (creo que se les permite más libertad en el segundo año ...)

Tengo una partición de Windows XP y puede descargar Visual Basic Express Edition de forma gratuita, sin embargo, me gustaría saber en qué medida es probable que pueda usar Ubuntu (Mono o cualquier otra cosa) para mis estudios. ¿Alguien puede darme alguna idea de por dónde empezar?

Siendo realistas para que esto funcione, necesito poder usar los mismos archivos / proyectos / lo que sea, tanto en Ubuntu como en Windows, para poder trabajar desde máquinas Windows en la universidad y, lo que es más importante, ¡para que los maestros puedan ver y marcar mi trabajo! (Realmente no quiero preguntarle a mi maestro sobre mi uso de Ubuntu, prefiero mezclarme y ser un estudiante normal ...)

8128
fuente
Echa un vistazo a Mono y MonoDevelop mono-project.com .
Bilal Akhtar
1
Solo quiero decir que me encantó desarrollar con VB.net, y que fue uno de mis idiomas favoritos para aprender. Desafortunadamente, cuando comencé a aprender VB.net ya había tomado clases en C ++ y Java, y odiaba completamente la programación. Me alegra ver que las escuelas se están moviendo hacia comenzar con VB como manual.
TheXed
Interesante. Tengo curiosidad, ¿cómo es VB.net mejor que C # (o Java)?
NoBugs

Respuestas:

18

Use MonoDevelop pero tenga cuidado con las peculiaridades del desarrollo de .NET de plataforma X

Primero, instale mono encontrándolo en el Centro de software o escribiendo

sudo apt-get install monodevelop mono-vbnc

MonoDevelop es bastante equivalente a Visual Studio Express, siendo las principales diferencias:

  • MonoDevelop no es compatible con WPF (Windows Presentation Foundation), pero eso no debería importar mucho, ya que Microsoft planea matar a WPF con la llegada de Windows 8.

  • Verifique que se esté utilizando el objetivo de .NET Framework correcto. Después de crear una solución, haga clic derecho en el proyecto y vaya a Opciones-> Construir-> General. No es muy diferente de apuntar a una versión específica de .NET en Windows.

Aparte de esos problemas, realmente no he encontrado nada faltante sin el que no pueda vivir.

El único otro problema (no relacionado con mono) que puede volver a morderte es el clásico problema de final de línea. * nix todavía usa LF y Windows todavía usa CRLF para terminaciones de línea, por lo tanto, cuando transfiere sus archivos de origen al cuarto entre Windows / * nix. AFIAK, MonoDevelop guarda los archivos fuente en UTF-8 de manera predeterminada, pero VS guarda los archivos fuente en ASCII de Windows (con ASCII latino de Windows-1252 con terminaciones de línea específicas de Windows). Si recibe archivos de origen creados con Visual Studio, es posible que deba convertir el formato para que funcione en * nix.

Como puede ver, el desarrollo de x-platform .NET puede ser un poco desafiante al principio, pero en mi humilde opinión, vale la pena. Me gusta la interfaz no desordenada de MonoDevelop (los efectos visuales en VS solo se interponen en la mayor parte del tiempo), se carga en una fracción del tiempo que VS (útil si no suele dejar su IDE abierto todo el tiempo) ), ocupa una fracción del espacio sin complementos innecesarios adicionales (VS es realmente desagradable al respecto).

Instalarlo fue fácil ya que sudo apt-get install monodevelop. Además, herramientas populares como NUnit (para pruebas unitarias) han sido transferidas y funcionan perfectamente en * nix. La versión de Windows de MonoDevelop apesta (o al menos lo hizo la última vez que lo probé).

Actualizar:

Para obtener el código VB para compilar, también necesitará instalar el módulo compilador VB:

sudo apt-get install mono-vbnc

También actualicé esta respuesta para eliminar algunos de los problemas que ya no son relevantes.

Evan Plaice
fuente
1
Recibo un mensaje de error: Error: Visual Basict .NET compiler not found (Mono 2.4.4) (Testing)(esto es, literalmente, solo tratando de ejecutar la aplicación de consola predeterminada Hello World VB.NET)
8128
3
@fluteflute El compilador no se encuentra porque no está instalado. Aparentemente, el compilador de VB para .NET no está instalado en Ubuntu de manera predeterminada como lo es para C #. Simplemente 'sudo apt-get install mono-vbnc' para instalarlo.
Evan Plaice
Puede abrir proyectos de Visual Studio VB.net/C# en Monodevelop, compila y funciona bien, incluso los formularios de ventana GUI funcionan. Recomendaría comenzarlo con Visual Studio si es posible, si está trabajando en aplicaciones de formulario MS Windows. Mono no tiene un 'modo de diseño' fácil para diseñarlos. (¿todavía?)
NoBugs
@NoBugs Mono puede manejar las GUI de Winforms? Siempre pensé que se quedarían solo con GTK #. Supongo que es hora de actualizar esta respuesta.
Evan Plaice
Sí, ejecuté dos proyectos de Windows-VS en Mono sin problemas. Sin embargo, creo que es posible que deba agregar una importación a Monodevelop. Native GTK es probablemente lo que usan la mayoría de las aplicaciones de Linux C #.
NoBugs
4

Realmente depende de tu plan de estudios.

Mono tiene soporte para el lenguaje VB.NET, pero el marco es algo diferente en algunos lugares y predeciría que gran parte de su trabajo será sobre el marco .NET como el lenguaje central. Puede que no sea como parece que está en un nivel bastante elemental (¡sin intención de ofender!)

Incluso si el trabajo está orientado al idioma, como usted dice, no obtendrá los tontos archivos de metaproyecto de Visual Studio. Podrías tener problemas para abrir cosas y (nuevamente, como dices) definitivamente tendrás problemas para llevar cosas a otras personas (quizás menos competentes).

En este caso, y aún desea Ubuntu como su sistema principal, VirtualBox suena como la mejor manera de seguir siendo compatible con su trabajo de curso. Es mucho más conveniente que el arranque dual, pero requiere que tengas una computadora más que promedio para una buena experiencia (especialmente con algo pesado como VS.NET).

O vence a tu maestro para que aprenda y enseñe Python. Con mucho, un lenguaje más simple y mejor.

Oli
fuente
3
+1 para Virtual Box + -1 para Python como lenguaje de collage = 0
TheLQ
1
¿Qué le pasa a Python? Definitivamente es mucho mejor que VB.
dv3500ea
2
Oh +1 para Virtual Box (es VB como Visual Basic), +100 para python como lenguaje de aprendizaje.
Javier Rivera
1
Python tiene una sintaxis esotérica y se basa en sangrías para determinar qué se ejecuta cuando. En mi opinión, es mejor que VB, pero no como lenguaje de aprendizaje.
ayan4m1