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
|
2 | char[] separators = { '=' }; |
3 | string[] lines = File.ReadAllLines("abcd.txt"); |
4 | foreach (string s in lines) { |
5 | string[] parts = s.Split(separators); |
6 | ...
|
7 | }
|
8 | |
9 | // XML-Datei
|
10 | XmlTextReader reader = new XmlTextReader("cdef.xml"); |
11 | while (reader.Read()) { |
12 | switch (reader.NodeType) { |
13 | ...
|
14 | }
|
15 | }
|
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.