Hallo,
für meine Diplomarbeit soll ich eine Windows-Anwendung machen, mit der
die eigentliche Arbeit über USB gesteuert wird.
An diesem Punkt wollte ich mal fragen, welche Programmiersprache sich
dafür eignen würde. Als Entwicklungsumgebung werde ich Visual Studio
verwenden.
Für Visual Basic würde ja die Einfachheit und Schnelligkeit sprechen.
Allerdings bin ich kein so wahrer Freund davon, da man dabei schnell die
Übersichtlichkeit verliert, da meiner Ansicht nach Visual Basic nicht
stark strukturiert ist.
Mit C++ unter Visual Studio zu programmieren finde ich irgendwie
komisch, da man irgendwie nur in Header-Files programmiert (seh ich das
richtig?).
Eine andere Option wäre C#: Da ich die Erstellung der Windows-Anwendung
erst ab Juli plane (ich bin zwischen durch für 3 Monate an meiner
Hochschule) hätte ich noch genug Zeit mich da einzuarbeiten.
Wer hat Erfahrungen mit C#?
Oder was würdet ihr mir von den 3 Sprachen empfehlen?
Gruß Flea
Flea wrote:
> Für Visual Basic würde ja die Einfachheit und Schnelligkeit sprechen.> Allerdings bin ich kein so wahrer Freund davon, da man dabei schnell die> Übersichtlichkeit verliert, da meiner Ansicht nach Visual Basic nicht> stark strukturiert ist.
Falsch. Unter VB gibt es praktisch dieselben Strukturelemente wie unter
C# (und C++).
Wirklich einfacher ist VB aber nicht unbedingt. Es ist vielleicht etwas
selbsterklärender zu Lesen als C#/C++.
Class SubClass
Inherits BaseClass
[...]
End Class
gegenüber
class SubClass:BaseClass {
[...]
}
> Mit C++ unter Visual Studio zu programmieren finde ich irgendwie> komisch, da man irgendwie nur in Header-Files programmiert (seh ich das> richtig?).
Kaum.
Ausserdem musst Du entscheiden, ob Du mit Win32, MFC oder .NET
programmierst.
> Eine andere Option wäre C#: Da ich die Erstellung der Windows-Anwendung> erst ab Juli plane (ich bin zwischen durch für 3 Monate an meiner> Hochschule) hätte ich noch genug Zeit mich da einzuarbeiten.> Wer hat Erfahrungen mit C#?
Ich bin am mich in C# einarbeiten. Sieht echt gut aus.
> Oder was würdet ihr mir von den 3 Sprachen empfehlen?
Bedenke: Die Sprache ist das Eine, die zu verwendenden Bibliotheken das
Andere. Wenn Du mal .NET kennst, kannst Du es mit VB wie auch mit C#,
(mit Einschränkungen?) auch mit C++ verwenden.
Man kann in jeder Programmiersprache strukturiert arbeiten oder
chaotischen Spaghetti-Code produzieren.
Ich würde dir empfehlen, sieh' dir RealBasic wenigstens mal an. Das hat
den Vorteil. dass es das für Windows, Mac und Linux in identischen
Versionen gibt und man arbeiten oder trainieren kann, egal welches
System man zur Verfügung hat. Ausserdem laufen die Anwendungen dann auch
auf den Systemen.
Für den Zugriff auf USB-Treiber braucht man allerdings passende Plugins,
die den Code für alle Plattformen enthalten oder API-Wrapper, die mit
"Declare ..."-Statements arbeiten. Dabei gibt man einen Teil der
Plattformunabhängigkeit des Quellcodes wieder auf. RB-Compilate haben
dan Vorteil, dass sie nicht installiert werden müssen: kopieren,
klicken, läuft.
Frank
C++ mit Qt/Ultimate++/wxWidgets/gtkmm? Dann bleibt das Projekt auch
etwas offener für andere Plattformen/Betriebssysteme.
Java mag ich zwar nicht, wäre aber ebenfalls eine Option... ansonsten
ist sowas eh immer Geschmackssache, auf VB wäre ich nie gekommen. ;-)
Vielleicht sprichst du mal deine Betreuer an, wenn die selbst irgendwas
bevorzugen, wäre es nicht ungeschickt das gleiche zu nehmen, dann
können die besser helfen. ;-)
> RB-Compilate haben dan Vorteil, dass sie nicht installiert werden> müssen: kopieren, klicken, läuft.
Öh, bei allen anderen, mit dll kopieren, klicken, läuft auch. ;-)
Statisch linken dürfte bei dem meisten Rotz da oben auch gehen.
Und den .NET-Kram braucht mittlerweile unter Windows eh fast auf
jedem Rechner.
Mit Visual Studio .NET und C# setzt Du bestimmt nicht auf das falsche
Pferd. Ich würde definitiv diesen Weg einschlagen. Erst mal brauchst Du
im Grunde nur ein Package zu installieren und dann hast Du alles auf dem
PC was es braucht. Weiter gibts im Internet fast unendlichen Support in
MSDN, Foren, Newsgroups, ...
Bei einer Diplomarbeit ist ja die Zeit knapp bemessen und vorgegeben,
darum würde ich mich nicht auf Experimente mit zusammengewürfelten Tools
einlassen sondern etwas Bewährtes aus einem Guss nehmen.
Visual Studio werde ich definitiv verwenden.
Mir gehts nur um die Programmiersprache.
Was ich vergessen habe zu erwähnen: Ich werde auch ziemlich viel mit
Dateien zu tun haben, da Konfigurationen gespeichert werden. Beim Umgang
mit Dateien find ich Visual Basic auch nicht so toll wie C.
Wie ist da C#???
Es hat erst mal nichts mit C# zu tun, denn diese Funktionalität um
Dateien lesen/schreiben zu können ist im .NET Framework integriert. Von
da her spielt es eigentlich keine Rolle, ob Du nun C#, Visual Basic, C++
oder Java in Visual Studio programmierst; das .NET Framework ist für all
diese Sprachen dasselbe.
Dateihandling ist damit im übrigen gar kein Problem, hab auch schon viel
damit gemacht.
Flea wrote:
> Visual Studio werde ich definitiv verwenden.> Mir gehts nur um die Programmiersprache.> Was ich vergessen habe zu erwähnen: Ich werde auch ziemlich viel mit> Dateien zu tun haben, da Konfigurationen gespeichert werden. Beim Umgang> mit Dateien find ich Visual Basic auch nicht so toll wie C.> Wie ist da C#???
Das hat bei C# und VB nichts mehr (bzw. nur sehr wenig) mit der Sprache
zu tun. Die Funktionen sind im Net-Framework und lassen sich in allen
Sprachen für das Net-Framework gleich verwenden.
(zu spät abgeschickt... s.o.)
Bsp.:
1
// C#, Textdatei einlesen und jede Zeile in Schlüssel und Wert aufteilen