C++ oder Java



  • low-level : assembler
    mittle-level: c
    high-level: c++, Basic, java

    c++ und java sind in einer Ebene, je höher der level ist, umso mehr Einschränkungen hat diese Sprache. Anscheind ist c++ eine Ausnahme, die ist zwar eine high-level Sprache, aber damit kann man alles realisieren, was man mit C tut.



  • Vorteile von Java sind Garbage Collection,genau gesagt es zählt nicht zu den Vorteilen, weil der Programmier kann nicht explizit memory aufräumen, d.h. es fehlt einige Flexibiltäten.

    Andere sagen es sei ein mehr an Komfort und sicherer. Aber das hatten wir schon zuuu oft!

    Java hat viele Einschränkungen im Gegensatz zu C++, fast wie VB und VC++

    was hat die IDE VC++ jetzt mit Einschränkungen zu tun?



  • nein, was ich meine ist C++ und Basic



  • Es kommt ja immer noch darauf an, was man machen will. Nenne uns ein Beispiel, und wir könnten dir sagen, wieso wir es mit was versuchen würden. Vor- und Nachteile zu diskutieren, ohne ein Beispiel macht wenig Sinn. Du wirst wahrscheinlich nur mit C++ und nicht mit Java auf die Registry von Windows zugreifen (Java ist plattformunabhängig, und unter Linux wird es sowas nicht geben).

    Garbage Collection: was du als Nachteil siehst, sehe ich als eine Erleichterung. Es ist genau dann ein Nachteil, wenn du darauf bedacht sein musst, wie viele Ressourcen dein Programm haben darf. Da ist Java vielleicht eher die zweite Wahl (Was natürlich auf den speziellen Anwendungsfall wieder ankommt). Was aber bei heutigen Speicherpreisen eher kein Problem ist.

    Meine Meinung: Einen Großteil der Anwendungen kann in beiden Sprachen realisiert werden.



  • c++ und java sind in einer Ebene

    Das kann man zB auch anders interpretieren. Immerhin läuft ja bei Java noch eine VM zwischen System und Programm die es bei C++ in der Form sicherlich nicht gibt.

    MfG SideWinder



  • netrobot schrieb:

    ..., je höher der level ist, umso mehr Einschränkungen hat diese Sprache ...

    Programmiersprachen werden nicht "eingeschränkter", je höher ihr "Level" ist.
    Lisp und CLOS zum Beispiel, sind Sprachen, die von ihrem "Level" weit über C++, Java, C#, Phyton und Konsorten stehen und trotzem wesentlich flexibler sind.



  • netrobot schrieb:

    Meiner Meinung nach C++ ist besser als Java solange es nicht mit internet zu tun hat.

    Aha. ...und warum denkst du, Java sei im Bereich Internet "besser"? Was ist die Eigenschaft von Java, die es für das Internet gut macht. Und was meinst du damit eigentlich? Willst du darauf anspielen, dass man mit Java "Applets" haben kann, dass man seine Programme via "Java Webstart" verteilen kann, dass ne ganze Menge Application-Server und so in Java geschrieben sind? Oder geht es um Bereiche der Standardbibliothek. Klar hat Java bezüglich der Standardbibliothek mehr zu bieten als C++. C++ ist diesbezüglich ja jämmerlich (ah, ok: Es soll ja auch alles auf nem Toaster laufen können, ich weiß).

    netrobot schrieb:

    Vorteile von Java sind Garbage Collection,genau gesagt es zählt nicht zu den Vorteilen, weil der Programmier kann nicht explizit memory aufräumen, d.h. es fehlt einige Flexibiltäten.
    Java hat viele Einschränkungen im Gegensatz zu C++, fast wie VB und VC++

    Für mich ist neben der Standardbibliothek der relevanteste Unterschied zwischen den beiden Sprachen, dass ich in Java sehr genaue Informationen über die Typen einzelner Objekte und so weiter zur Laufzeit zur Verfügung habe. Zumindest nutze ich das bei Java sehr stark aus. ...das kann man übrigens auch als Nachteil sehen.



  • Reflection ist der Template-Vorteil der Javaianer 😉

    MfG SideWinder



  • freez schrieb:

    Du wirst wahrscheinlich nur mit C++ und nicht mit Java auf die Registry von Windows zugreifen (Java ist plattformunabhängig, und unter Linux wird es sowas nicht geben).

    Soweit ich weiß gibts dazu auch Java Bibliotheken die dann Systemspeziefisch arbeiten.

    Ich finde, dass man mit Java besser objektorientiertes Programmieren lernt. In C++ ist es immer umständlicher Klassen ode interfaces zu definieren und es gibt sehr viele Bibliotheken die nicht wiklich objektorientiert sind. In Java wird man viel mehr zum oo. prog. gezwungen.



  • freez schrieb:

    Du wirst wahrscheinlich nur mit C++ und nicht mit Java auf die Registry von Windows zugreifen (Java ist plattformunabhängig, und unter Linux wird es sowas nicht geben).

    Du wirst wahrscheinlich nur mit Java und nicht mit C++ auf die Registry von Windows zugreifen (C++ ist plattformunabhängig und auf einer Waschmaschine wird es sowas nicht geben). 😉



  • Ich denke wir hatten genug Diskussionen zu diesem Thema. Bitte schaut euch die alten Diskussionen an.

    Thread closed.


Anmelden zum Antworten