Windowsprogramm mit C++ oder Java?
-
Der OP wird schätze ich mal beides nicht können. Daher: Java, weils einfacher zu lernen ist.
-
vergiss c++. nimm c# oder java. ich selbst würd java nehmen, aber das is wohl geschmackssache, c# is auch ok
c++ kannst ja nehmen wenn du langeweile hast.
-
Ganz einfach: Hängt davon ab was für ein Windws-Programm du schreiben willst.
-
@ hustbaer:
Jop Java dürfte leichter zu lernen sein, wenn man anfängt (keine Ahnung wie c# da liegt).
C++ bietet sich eigentlich nur an wenn mans bereits kann (und ein vernünftiges Toolkit verwenden kann) oder wenns ohne jegliche Runtime laufen soll (Java benötigt ja die VM und c# würde ja wohl dann .NET / mono benötigen) dann gibts allerdings auch kein GTK+/Qt
-
nep schrieb:
Ganz einfach: Hängt davon ab was für ein Windws-Programm du schreiben willst.
eigentlich nich ...
-
darthdespotism schrieb:
@ hustbaer:
Jop Java dürfte leichter zu lernen sein, wenn man anfängt (keine Ahnung wie c# da liegt).C# liegt auf der dunklen Seite der Macht
Ok, Scherz beiseite, C# ist alleine von der Sprache her schwerer zu lernen als Java, ganz einfach weils vielmehr Keywords, "Konstrukte" und Sprachfeatures hat.Sollte jmd. allerdings mit der Win32 API gut vertraut sein ist es vermutlich einfacher sich in das .NET Framework einzuarbeiten als in die Java Std.Lib. -- bloss dann hätten wir vermutlich wieder den Fall dass dieser Jemand schon C oder C++ kann
-
Also ich finde C# ist unnötig aufgebläht, man wollte einfach Java "besser" machen. Imho sind Structs, Delegates, Events, Operatoren* und Properties einfach zu viel des Guten. Ich habe zwar früher in Java die Operatoren* vermisst aber inzwischen bin ich ganz froh das es sie nicht gibt (damals habe ich noch so halb/halb C++ und Java programmiert). Macht die Sprache nur unnötig kompliziert und gebraucht werden sie in 99% der Fälle eh nicht.
* Ich mein natürlich Operatorüberladung.
-
vergiss c++. nimm c# oder java. ich selbst würd java nehmen, aber das is wohl geschmackssache, c# is auch ok
c++ kannst ja nehmen wenn du langeweile hast.
Es läuft prinzipiell auf eine Weiterentwicklung der objektorientierten Programmiersprache C++ hinaus. Diese Entwicklung hat sich in Java und C# manifestiert. Daher bieten diese Sprachen die Entwicklung von "Fenster"-Programmen (GUI) bereits in objektorientierter Form an. Java VM oder .NET/Mono (hier wird ein unnötiger Konflikt ausgetragen) benötigt man heutzutage sowieso, weil ansonsten viele Programme nicht laufen. Fasst man alles zusammen, bietet sich C# als modernste Sprache an.
-
Fasst man alles zusammen, bietet sich C# als modernste Sprache an.
Du meinst die aufgblähste Sprache. Siehe mein Posting oben. Was bietet es aber im gegensatz zu Java zusätzlich an?
-
Erhard Henkes schrieb:
Java VM oder .NET/Mono (hier wird ein unnötiger Konflikt ausgetragen) benötigt man heutzutage sowieso, weil ansonsten viele Programme nicht laufen.
Unter Win eindeutig richtig (und das war ja auch die Frage des OP.
Unter Linux hab ich kein Mono installiert und Java hats auch ne Zeit gebraucht bis ich das für nötig befunden habe.
Java(Apletts) laufen da allerdings momentan immer noch nicht sauber, gewisse IRC-Anbindungen bringen sowohl Firefox als auch Opera zum Crash, sodass Java hier uU problematisch sein kann.
-
DEvent schrieb:
Fasst man alles zusammen, bietet sich C# als modernste Sprache an.
Du meinst die aufgblähste Sprache. Siehe mein Posting oben. Was bietet es aber im gegensatz zu Java zusätzlich an?
zusätzliche komplexität.
-
pale dog schrieb:
DEvent schrieb:
Fasst man alles zusammen, bietet sich C# als modernste Sprache an.
Du meinst die aufgblähste Sprache. Siehe mein Posting oben. Was bietet es aber im gegensatz zu Java zusätzlich an?
zusätzliche komplexität.
Und das ist eher negativ.
Eine kritische Betrachtung der zusätzlichen C#-Features: http://www.geocities.com/csharpfaq/tfa
-
tfa schrieb:
pale dog schrieb:
DEvent schrieb:
Fasst man alles zusammen, bietet sich C# als modernste Sprache an.
Du meinst die aufgblähste Sprache. Siehe mein Posting oben. Was bietet es aber im gegensatz zu Java zusätzlich an?
zusätzliche komplexität.
Und das ist eher negativ.
so sollte man es auch verstehen...
-
zusätzliche komplexität ist dann negativ, wenn es nicht viel neues oder keine vorteile bringt. wenn man keine functionspointer oder call by reference hat kann das schon manchmal fehlen.
-
Also ich finde C# auch ziemlich aufgebläht und startet auch gleich 3 Threads bei einem einfachen Programm. Aber dass es schwer zu erlernen ist finde ich zumindest nicht so. Meiner Meinung nach kannst du C++ und ne Bibliothek oder Java nehmen, dann bist du wenigstens Plattformunabhängig.
BTW:Die Zitierfunktion funkt. irgendwie nicht.
-
mkoiu schrieb:
zusätzliche komplexität ist dann negativ, wenn es nicht viel neues oder keine vorteile bringt. wenn man keine functionspointer oder call by reference hat kann das schon manchmal fehlen.
Wenn du Funktionspointer & co. brauchst hast dus doch nicht mehr wirklich einfacher als mit C++ oder?
Und Java hat IMHO call-by-reference, call-by-value ist da IMHO eher das Probelem
-
Nur mal so nebenbei erwaehnt hat der Threadersteller C# nicht mit einer Silbe erwaehnt, euer Geflame ist komplett OT.
Wenn du (Threadersteller) wesentlich mehr Erfahrung mit einer der beiden Sprachen hast, dann nimm die. Ansonsten ists mit Java wohl einfacher, eine GUI zu basteln. Allerdings hast du dann halt typische "Java-GUIs", und (persoenliche Meinung!!!) die sind IMO nicht 100%ig "windows-like". Natuerlich koenntest du dafuer auf Fremdbibliotheken zurueckgreifen (SWT), wenn du das willst.
Mit C++und entsprechender Library (MFC, wxWidgets) erhaelst du Programme, die wirklich "native" Win32 Anwendungen sind. Ob es fuer dich aufwaendiger ist, dich in eine C++ Lib oder eine Java-Lib einzuarbeiten, musst du aber immer noch selber entscheiden.
-
darthdespotism schrieb:
Und Java hat IMHO call-by-reference, call-by-value ist da IMHO eher das Probelem
in java gibt es kein call-by-reference. in jav agibt es nur call by value. zum tausendsten mal inzwischen in diesem forum glaube ich, aber das ist ja nich das thema
Blue-Tiger schrieb:
Allerdings hast du dann halt typische "Java-GUIs", und (persoenliche Meinung!!!) die sind IMO nicht 100%ig "windows-like". Natuerlich koenntest du dafuer auf Fremdbibliotheken zurueckgreifen (SWT), wenn du das willst.
Mit C++und entsprechender Library (MFC, wxWidgets) erhaelst du Programme, die wirklich "native" Win32 Anwendungen sind.darauf hab ich gewartet
vor allem weil gtk, qt und wx auf windows auch so derb "windows-like" aussehen
-
hallo zusammen schrieb:
darthdespotism schrieb:
Und Java hat IMHO call-by-reference, call-by-value ist da IMHO eher das Probelem
in java gibt es kein call-by-reference. in jav agibt es nur call by value.
falsch.
nur primitive datentypen werden 'by value' übergeben, alles andere 'by reference'
-
Ich glaub den call-by-reference und value streit hatten wir schon.