Zukunft von C++



  • Nein, Bibliotheken sind nur Indizien! Fangfrage: Mit welcher Sprache wurde folgendes Programm geschrieben:

    linux-gate.so.1 =>  (0x002ff000)
    	librt.so.1 => /lib/librt.so.1 (0x0041f000)
    	libutil.so.1 => /lib/libutil.so.1 (0x05c89000)
    	libdl.so.2 => /lib/libdl.so.2 (0x003c6000)
    	libm.so.6 => /lib/libm.so.6 (0x0039c000)
    	libgmp.so.3 => /usr/lib/sse2/libgmp.so.3 (0x03bb5000)
    	libc.so.6 => /lib/libc.so.6 (0x00428000)
    	libpthread.so.0 => /lib/libpthread.so.0 (0x003cd000)
    	/lib/ld-linux.so.2 (0x00205000)
    


  • Mit Scheme



  • Gregor schrieb:

    Natürlich haben Sprachen wie Java und C# auch Nachteile. Eine geringere Ausführungsgeschwindigkeit der Programme zum Beispiel. [...]

    Ein Nachteil bei der Ausführungsgeschwindigkeit merkt IMHO eh keiner mehr. Mehr aber die Startgeschwindigkeit. In Java muss ja immernoch leider die gesammte JVM und JRE geladen werden. Es werden ja jetzt mehr Schritte unternommen um das ganze modularisierter zu machen.

    Gregor schrieb:

    Dann kann man die Ausdrucksmöglichkeiten in den verschiedenen Sprachen betrachten. C++ bietet einem da wesentlich mehr Möglichkeiten, die es einem erlauben, für bestimmte Dinge wesentlich eleganteren Code zu schreiben. Das kann Vorteile haben, wenn der Code dadurch zum Beispiel wesentlich kleiner und wartbarer wird. [...]

    Kleinerer Code ist nicht automatisch eleganter oder wartbarer. Ein MVC Model z.B. kann ziemlich viel Code haben, trotzdem ist es einem kompakterem Model vorzuziehen, da eleganter und wartbarer.

    rüdiger schrieb:

    Desktop-Anwendungen für Windows dürften wohl verstärkt in C# oder VB.net gemacht werden. Aber wenn man portable Desktopanwendungen schreiben will, dann wird man zur Zeit wohl kaum an C++ vorbeikommen und mit steigender Popularität von nicht-Windows-Desktops wird das Thema ja auch immer wichtiger. Java scheint hier nicht so verbreitet zu sein, da sich Java-GUI-Anwendungen auf jedem System fremd anfühlen (ich weiß, es gibt auch Qt-Bindings und native bindings). Bis auf Spezialanwendungen, wie Matlab, und vielleicht Firmen-/Uniinterne Sachen fällt mir da auch nichts ein. Von irgend wem habe ich mal den Spruch gehört, dass Programmiersprachen wie Abwasserwerke sind. Sie sind wichtig und sie müssen da sein. Aber sobald man als Anwender etwas von ihnen mitbekommt, ist etwas komplett falsch gelaufen. Und gegen das Prinzip verstößt Java nach meiner Erfahrung.

    Aber ganz ehrlich denke ich auch, dass Desktop-Anwendungen immer mehr an Bedeutung verlieren und Webanwendungen immer wichtiger werden. Und da scheinen ja derzeit vor allem Sprachen wie Python, Ruby und Javascript sehr erfolgreich zu sein.

    Es gibt genuegend andere Sprachen, die du ja anscheinend nur fuer "Webanwendungen" angebracht siehst. Mit PyQT, oder fuer KDE die Javascript Bindings mit denen du die Applets schreiben kannst. Auch fuer Ruby und Perl gibt es genug GUI-Frameworks.

    Und das Argument, dass sich Java immer fremd anfuehlt, naja. Was ist mit z.B. Winamp, oder mit den Ribbons von Office 2007? Oder jede x beliebige andere Anwendung, die irgendwas neues erfinden muss, um sich von den anderen Anwendungen hevorheben zu muessen? IMHO alleine fuer den Mac gibt es sowas wie ein konistentes Aussehen, aber grade auf Windows sehen zwei Anwendungen nie gleich aus. Java muesste einfach ein moderneres Look&Feel bekommen. Das aktuelle fuer Swing sieht wieder altmodisch aus.

    Aber ein Vorteil muessten die ganzen andere Programmiersprachen noch aufholen. Mit einer Java app kann ich einfach die .Jar runterladen und es laeuft. Ich kann es auch direkt aus dem Webbrowser starten lassen. Allein Python und Perl sind genauso elegant, aber ich denke das die JRE auf mehr Computer vorinstalliert ist, als ein Python oder Perl Interpreter.

    Mit einem C/C++ Programm muss ich mich mit meinem System auskennen. Ist es Windows, Linux, Mac, ist es x86 oder amd_64 oder powerPC? Was wenn ich einen amd_64 habe, aber die Executable ist nur fuer x86? Wie steht das mit deinem "Programmiersprachen [sind] wie Abwasserwerke" Prinzip?



  • DEvent schrieb:

    Und das Argument, dass sich Java immer fremd anfuehlt, naja. Was ist mit z.B. Winamp, oder mit den Ribbons von Office 2007? Oder jede x beliebige andere Anwendung, die irgendwas neues erfinden muss, um sich von den anderen Anwendungen hevorheben zu muessen?

    Und die sind ale zu 90% ein Usability desaster.



  • @DEvent
    Also auf meinem Rechner war anfangs kein Java drauf. Ich musste zumindest das JRE ganz normal installieren und genausovile über meinen Rechner wissen. Kein Wunder die JRE ist ja auch in C++ geschrieben. Was eigentlich gemeint war, am Look and Feel sollte man die Sprache nicht erkennen und das erfüllt Java nicht.



  • Tyrdal schrieb:

    @DEvent
    Also auf meinem Rechner war anfangs kein Java drauf. Ich musste zumindest das JRE ganz normal installieren und genausovile über meinen Rechner wissen. Kein Wunder die JRE ist ja auch in C++ geschrieben. Was eigentlich gemeint war, am Look and Feel sollte man die Sprache nicht erkennen und das erfüllt Java nicht.

    Dann nimm halt SWT und nicht Swing. Kannst auch gerne die QT Bindings nehmen. Oder nimm ein anderes Look&Feel, als eine profisionelle Firma kannst du auch gerne dein eigenes entwickeln.



  • DEvent schrieb:

    Java muesste einfach ein moderneres Look&Feel bekommen. Das aktuelle fuer Swing sieht wieder altmodisch aus.

    Meinst du damit schon das Nimbus Look and Feel? Das sieht doch ganz ordentlich aus. Ansonsten soll Substance auch nen ganz gutes sein: https://substance.dev.java.net/see.html

    Tyrdal schrieb:

    Was eigentlich gemeint war, am Look and Feel sollte man die Sprache nicht erkennen und das erfüllt Java nicht.

    Das Ziel von Swing ist halt überall gleich auszusehen. Wenn ich unter Windows eine Anwendung schreibe muss ich mir z.B. keine Gedanken darüber machen das Buttons unter Mac OS eine andere Form haben oder ähnliches.



  • DEvent schrieb:

    Es gibt genuegend andere Sprachen, die du ja anscheinend nur fuer "Webanwendungen" angebracht siehst.

    Nein, dass hab ich nicht gesagt. Kein Grund sich künstlich aufzuregen. Du müsstest ja nur mal einen Blick auf meine Signatur werfen, um Flusspferd zu entdecken... 🙄

    DEvent schrieb:

    Und das Argument, dass sich Java immer fremd anfuehlt, naja. Was ist mit z.B. Winamp, oder mit den Ribbons von Office 2007? Oder jede x beliebige andere Anwendung, die irgendwas neues erfinden muss, um sich von den anderen Anwendungen hevorheben zu muessen? IMHO alleine fuer den Mac gibt es sowas wie ein konistentes Aussehen, aber grade auf Windows sehen zwei Anwendungen nie gleich aus. Java muesste einfach ein moderneres Look&Feel bekommen. Das aktuelle fuer Swing sieht wieder altmodisch aus.

    Gut, dann sag ich es mal so: Das Standard Java-Interface schaut halt überall hässlich aus. Mit einem modernen Look&Feel würde es sicher gehen. Aber zZ sehen die Programme halt aus wie 1998 mit Bitmap-Fonts (zB Matlab). Aus dem Grund ist Java eben auch nicht wirklich in dem Desktop-Anwendungsbereich etabliert, in dem die User auch die Kunden sind.

    DEvent schrieb:

    Aber ein Vorteil muessten die ganzen andere Programmiersprachen noch aufholen. Mit einer Java app kann ich einfach die .Jar runterladen und es laeuft. Ich kann es auch direkt aus dem Webbrowser starten lassen.

    Ne, so einfach ist das nicht. Man muss sich dann noch die Java-Runtime installieren und nur auf OSX ist die iirc vorinstalliert. Und die JRE wird ja mittlerweile mit immer mehr Crapware (Browsertoolbars, Trialware) voll gestopft.

    Und schau einfach mal, wo man landet, wenn man nach "sun jre" oder "sun java" oder "java" sucht: http://java.sun.com/javase/downloads/index.jsp
    ich denke da wissen User noch eher, ob sie nun die Software für Mac OS X, Linux oder Windows runterladen müssen, als rauszufinden, ob sie nun das JDK mit NetBeans brauchen oder doch lieber Update 14 oder reicht vielleicht nur das Timezone Update Tool? (Hey, ich bin Programmierer, ich habe schon mit Java gearbeitet und ich wüsste nicht einmal auf Anhieb, was ich da jetzt runterladen muss)



  • rüdiger schrieb:

    Und schau einfach mal, wo man landet, wenn man nach "sun jre" oder "sun java" oder "java" sucht: http://java.sun.com/javase/downloads/index.jsp

    Also wenn ich nach Java suche, finde ich: http://www.java.com/de/

    Das ist eine Seite, auf der ich die passende JRE sehr bequem runterladen kann. Du hast die Downloadseite für die Entwickler gezeigt, nicht die für die Nutzer.



  • rüdiger schrieb:

    Gut, dann sag ich es mal so: Das Standard Java-Interface schaut halt überall hässlich aus. Mit einem modernen Look&Feel würde es sicher gehen. Aber zZ sehen die Programme halt aus wie 1998 mit Bitmap-Fonts (zB Matlab).

    hihi, dann haste wohl noch nie linux benutzt. was es da für verschiedene look+feels, windowmanager, desktop environments usw. gibt, würde dich erschrecken.
    🙂



  • ;fricky schrieb:

    rüdiger schrieb:

    Gut, dann sag ich es mal so: Das Standard Java-Interface schaut halt überall hässlich aus. Mit einem modernen Look&Feel würde es sicher gehen. Aber zZ sehen die Programme halt aus wie 1998 mit Bitmap-Fonts (zB Matlab).

    hihi, dann haste wohl noch nie linux benutzt. was es da für verschiedene look+feels, windowmanager, desktop environments usw. gibt, würde dich erschrecken.
    🙂

    Hm? Es gibt eigentlich nur QT und GTK. Zumindest sehen das 99% der Linux User. Als KDE oder Gnome Anwender sieht der Desktop sehr einheitlich aus.

    Aber wie gesagt es gibt jede menge Look&Feels fuer Java, freie und kommerzielle. zB
    http://www.jtattoo.net/ScreenShots.html
    http://www.javasoft.de/jsf/public/products/synthetica/themes



  • DEvent schrieb:

    Hm? Es gibt eigentlich nur QT und GTK.

    schau mal hier: http://linuxreviews.org/dictionary/Desktop_environment/
    🙂


Anmelden zum Antworten