VB.NET-Programmierung in Ubuntu

16

Ich habe gerade mit der sechsten Klasse angefangen und werde ein Computer-Abitur machen. Mir wurde mitgeteilt, dass die gesamte Programmierung im ersten Jahr in VB.NET unter Windows erfolgt (ich glaube, dass Sie im zweiten Jahr mehr Freiheit haben ...).

Ich habe eine Windows XP-Partition und Sie können Visual Basic Express Edition kostenlos herunterladen. Ich möchte jedoch wissen, inwieweit ich Ubuntu (Mono oder etwas anderes) wahrscheinlich für meine Studien verwenden kann. Kann mir jemand einen Hinweis geben, wo ich anfangen soll?

Wenn dies funktionieren soll, muss ich in der Lage sein, die gleichen Dateien / Projekte / was auch immer auf Ubuntu und Windows zu verwenden - damit ich auf Windows-Computern am College arbeiten kann und vor allem, damit Lehrer meine Arbeit ansehen und markieren können! (Ich möchte meinen Lehrer nicht wirklich nach meinem Ubuntu-Gebrauch fragen, ich würde es vorziehen, mich einzufügen und ein normaler Schüler zu sein ...)

8128
quelle
Schauen Sie sich Mono und MonoDevelop unter mono-project.com an .
Bilal Akhtar,
1
Ich möchte nur sagen, dass ich es geliebt habe, mit VB.net zu entwickeln, und es war eine meiner Lieblingssprachen, die ich gelernt habe. Leider hatte ich zu dem Zeitpunkt, als ich anfing, VB.net zu lernen, bereits Kurse in C ++ und Java belegt und hasste es, zu programmieren. Ich bin froh zu sehen, dass sich die Schulen in Richtung VB als Grundierung bewegen.
TheXed
Interessant. Ich bin gespannt, wie ist VB.net besser als C # (oder Java)?
NoBugs

Antworten:

18

Verwenden Sie MonoDevelop, aber achten Sie auf die Besonderheiten der .NET-Entwicklung auf der X-Plattform

Installieren Sie zunächst mono, indem Sie es entweder im Software Center suchen oder eingeben

sudo apt-get install monodevelop mono-vbnc

MonoDevelop ist vergleichbar mit Visual Studio Express. Die Hauptunterschiede sind:

  • MonoDevelop unterstützt WPF (Windows Presentation Foundation) nicht, aber das sollte keine Rolle spielen, da Microsoft plant, WPF mit der Einführung von Windows 8 zu beenden.

  • Stellen Sie sicher, dass das richtige .NET Framework-Ziel verwendet wird. Klicken Sie nach dem Erstellen einer Lösung mit der rechten Maustaste auf das Projekt und gehen Sie zu Optionen-> Erstellen-> Allgemein. Kein großer Unterschied zum Targeting einer bestimmten .NET-Version unter Windows.

Abgesehen von diesen Problemen habe ich nicht wirklich etwas vermisst, ohne das ich nicht leben kann.

Das einzige andere Problem (das nicht mit Mono zu tun hat), das Sie möglicherweise noch einmal beißt, ist das klassische Problem mit dem Zeilenende. * nix verwendet weiterhin LF und Windows verwendet weiterhin CRLF für Zeilenenden, wenn Sie Ihre Quelldateien zwischen Windows / * nix zurück und an vierter Stelle übertragen. AFIAK, MonoDevelop speichert Quelldateien standardmäßig in UTF-8, aber VS speichert Quelldateien in Windows ASCII (mit Windows-1252-lateinischem ASCII mit Windows-spezifischen Zeilenenden). Wenn Sie Quelldateien erhalten, die mit Visual Studio erstellt wurden, müssen Sie möglicherweise das Format konvertieren, damit es in * nix funktioniert.

Wie Sie sehen, kann die Entwicklung von x-platform .NET zunächst eine Herausforderung sein, aber IMHO, es lohnt sich. Ich mag die übersichtliche Benutzeroberfläche von MonoDevelop (die visuellen Effekte in VS stören nur die meiste Zeit). Sie wird in einem Bruchteil der Zeit geladen, die VS benötigt (nützlich, wenn Sie Ihre IDE normalerweise nicht die ganze Zeit offen lassen) ), es nimmt einen Bruchteil des Speicherplatzes ein, ohne zusätzliche unnötige Addons (VS ist diesbezüglich wirklich unangenehm).

Die Installation war einfach, da sudo apt-get monodevelop installiert. Außerdem wurden beliebte Tools wie NUnit (für Unit-Tests) auf * nix portiert und funktionieren dort einwandfrei. Die Windows-Version von MonoDevelop ist irgendwie zum Kotzen (oder zumindest das letzte Mal, als ich es ausprobiert habe).

Aktualisieren:

Um VB-Code zum Kompilieren zu erhalten, müssen Sie auch das VB-Compiler-Modul installieren:

sudo apt-get install mono-vbnc

Ich habe diese Antwort auch aktualisiert, um einige der nicht mehr relevanten Probleme zu beseitigen.

Evan Scholle
quelle
1
Ich erhalte eine Fehlermeldung: Error: Visual Basict .NET compiler not found (Mono 2.4.4) (Testing)(Dies ist buchstäblich nur der Versuch, die voreingestellte Standard-Konsolenanwendung Hello World VB.NET auszuführen)
8128
3
@fluteflute Der Compiler wurde nicht gefunden, weil er nicht installiert ist. Anscheinend ist der VB-Compiler für .NET nicht standardmäßig in Ubuntu installiert, wie dies auch für C # der Fall ist. Einfach 'sudo apt-get install mono-vbnc' installieren.
Evan Plaice
Sie können Visual Studio VB.net/C#-Projekte in Monodevelop öffnen, es kompiliert und führt einwandfreie, sogar GUI-Fensterformulare aus. Ich würde empfehlen, es mit Visual Studio zu starten, wenn Sie an MS Windows-Formularanwendungen arbeiten. Mono hat keinen einfachen "Design-Modus", um diese zu entwerfen. (schon?)
NoBugs
@NoBugs Mono kann mit Winforms-GUIs umgehen? Ich dachte immer, sie würden sich nur an GTK # halten. Ich denke, es ist Zeit, diese Antwort zu aktualisieren.
Evan Plaice
Ja, ich habe ohne Probleme zwei Windows-VS-Projekte in Mono ausgeführt. Ich denke, Sie müssen vielleicht einen Import zu Monodevelop hinzufügen? Natives GTK wird wahrscheinlich von den meisten Linux C # -Anwendungen verwendet.
NoBugs
4

Es hängt wirklich von Ihrem Lehrplan ab.

Mono unterstützt zwar die VB.NET-Sprache, das Framework ist jedoch an einigen Stellen etwas anders, und ich würde voraussagen, dass sich ein Großteil Ihrer Arbeit mit dem .NET-Framework befasst, da es die Hauptsprache ist. Es ist vielleicht nicht so, wie es sich anhört, als ob es sich auf einer ziemlich elementaren Ebene befindet (kein Vergehen beabsichtigt!)

Selbst wenn die Arbeit, wie Sie sagen, nur sprachorientiert ist, werden Sie die albernen Visual Studio-Metaprojektdateien nicht erhalten. Sie könnten Probleme haben, Dinge zu öffnen, und (wie Sie sagen) Sie werden definitiv Probleme haben, Dinge an andere (vielleicht weniger kompetente) Leute zu bringen.

Wenn dies der Fall ist und Sie immer noch Ubuntu als Hauptsystem wünschen, scheint VirtualBox die beste Möglichkeit zu sein, um mit Ihren Kursen kompatibel zu bleiben. Es ist viel praktischer als das Dual-Booten, erfordert jedoch einen überdurchschnittlichen Computer, um eine gute Erfahrung zu erzielen (insbesondere mit etwas schwerfälligem wie VS.NET).

Oder schlagen Sie Ihren Lehrer, um Python zu lernen und zu unterrichten. Mit Abstand eine einfachere und bessere Sprache.

Oli
quelle
3
+1 für Virtual Box + -1 für Python als
Collagesprache
1
Was ist los mit Python? Es ist definitiv viel besser als VB.
dv3500ea
2
Oh +1 für Virtual Box (es ist VB wie Visual Basic), +100 für Python als Lernsprache.
Javier Rivera
1
Python hat eine esoterische Syntax und verwendet Einzüge, um zu bestimmen, was wann ausgeführt wird. Meiner Meinung nach ist es besser als VB, aber nicht als Lernsprache.
ayan4m1