C,C++,C#,Java,



  • Habe einige wichtige Fragen:

    1. Gibt es eigentlich einen Grund, für ein Programmierprojekt (win32, *N{I,U}X,
    nicht zeitkritisch) *nicht* C++ (sondern C) zu verwenden ?

    Wieso werden überhaupt manche Projekte bei sourceforge oder auch Linux in C
    programmiert und nicht in C++ ?

    2. Wie steht's mit der Zukunkftssicherheit von C++ ?
    Kann man heutigen C++ code auch noch in 10 oder 20 Jahren verwenden ?

    3. Sind C# und Java Modesprachen oder werden die C++ ablösen ?
    Wenn nicht, ist ein Nachfolger von C++ am Horizont erkennbar ?



  • Die Frage gabs aber echt noch nie. Oder hab ichs übersehen?



  • Musst du übersehen haben. 🤡



  • zwiebelsuppe schrieb:

    Wieso werden überhaupt manche Projekte bei sourceforge oder auch Linux in C
    programmiert und nicht in C++ ?

    Bestes Tool für den Job. Aber oft auch: weil wir es immer so gemacht haben. Und manchmal einfach so.

    2. Wie steht's mit der Zukunkftssicherheit von C++ ?
    Kann man heutigen C++ code auch noch in 10 oder 20 Jahren verwenden ?

    Klar. Man kann ja auch immernoch COBOL verwenden... Ob es sinnvoll sein wird, ist eine andere Frage. Und 20 jahre sind verdammt lang...

    3. Sind C# und Java Modesprachen oder werden die C++ ablösen ?

    Ist Mode das, was gerade angesagt ist? wenn ja, dann sind sie welche.
    ablösen? nein. verdrängen? eher nicht, aber wer weiß?

    Wenn nicht, ist ein Nachfolger von C++ am Horizont erkennbar ?

    C++0x der neue C++ Standard 🙂



  • danke für die Antwort; da darf ich also draus lesen
    "nichts genaues weiß man nicht". Übrigens sind 20 Jahre
    für Programmiersparchen nicht viel, da stellt sich durchaus die
    Frage nach der Zukunftssicherheit: Fortran ist über 50 Jahre alt
    und wird nach wie vor oft verwendet.

    Na, wenn das alles so in den Sternen steht, bleib ich bei C++
    Wozu ist eigentlich C "best tool for the job", wo nicht C++
    auch geeignet wäre (außer zeitkritischen Sachen oder bei
    Sachen für 6502 oder so) ??



  • zwiebelsuppe schrieb:

    Frage nach der Zukunftssicherheit: Fortran ist über 50 Jahre alt
    und wird nach wie vor oft verwendet.

    so wie fortran heute, wird c++ auch noch sehr lange verwendet werden.

    aber fortran ist heute doch klar eine nischen sprache.

    Wozu ist eigentlich C "best tool for the job", wo nicht C++
    auch geeignet wäre (außer zeitkritischen Sachen oder bei
    Sachen für 6502 oder so) ??

    mit zeitkritisch hat das nix zu tun (6502 sagt mir jetzt nicht, ein microprozessor??)

    aber zB das GNU Programm true würde ich in C schreiben 😉
    best tool heißt aber auch, dass die erfahrung mit diesem tool ausschlaggebend sein kann. wenn man zB 10 jahre lang in C entwickelt hat, dann hat man in C eben mehr erfahrung als in etwas anderen wie zB c++, so dass diese erfahrung ausschlaggebend sein kann C zu nehmen.

    natürlich kann auch kein C++ compiler vorhanden sein oder nur ein schlechter c++ compiler. oder sonstwas 😉



  • C und C++ können nur bis 2038 verwendet werden.



  • Deine C Programme vielleicht 😉



  • wieso können c und c++ nur bis 2038 verwendet werden ?? <8-O





  • ach so.
    Aber da wir schon beim Thema sind:
    Wieso gibt es mit Java und c# zwei c++ - Abkömmlinge, die außer in Details
    wohl kaum anders als C++ sind, in der Syntax sogar fast wörtlich ? Ist das
    nur Marketing und "will auch Standards setzen"-Strategie oder was ist der
    tiefere Grund dafür ?
    (wozu man nach Perl und Python noch Ruby braucht, und warum man nicht html so
    erweitert hat, daß man Javascript nicht braucht, frage ich erstmal gar nicht)



  • zwiebelsuppe schrieb:

    Wieso gibt es mit Java und c# zwei c++ - Abkömmlinge, die außer in Details
    wohl kaum anders als C++ sind, in der Syntax sogar fast wörtlich ?

    Die Antwort ist einfach. Es gibt mit Java und C# nicht zwei C++ Abkömmlinge. Wenn du ein bisschen tiefer in die Programmierung einsteigst, wirst du die Unterschiede schon merken - die teilweise gravierend sind.

    (wozu man nach Perl und Python noch Ruby braucht, und warum man nicht html so
    erweitert hat, daß man Javascript nicht braucht, frage ich erstmal gar nicht)

    Ja, besser nicht. 😃 Erstmal selber tiefer einsteigen. Nur so viel: Es werden sich sicherlich ein paar Leute schon darüber Gedanken gemacht haben und darum ist es jetzt so, wie es ist.



  • zwiebelsuppe schrieb:

    wieso können c und c++ nur bis 2038 verwendet werden ?? <8-O

    Guckst Du hier:

    CAUSE
    The C Run-time (CRT) has a limitation with the time/date functions. Time is measured in seconds from Jan 1, 1970. This value is a 32-bit signed integer, so it has a maximum date of Jan 18, 2038 19:14:07 or 2^31 seconds (2,147,483,648 seconds) from Jan 1, 1970 00:00:00.

    Ich finde das genial, das sogenannte Y2k38-Problem... das passt genau auf den Beginn meiner Rente, ich werde mich dann als Ex-C-Programmier wie 1999 die COBOLer reaktivieren lassen und für horrende Geldsummen alten C-Code umstricken... ist bereits fester Teil meiner Zukunftsplanung. Ich habe mir sogar schon für den 19. Januar 2038 einen Termin in Outlook eingetragen. Äh. Moment.

    🕶

    Ach, ernsthaft: sucht mal in der MSDN nach "2038"...

    ➡ http://search.microsoft.com/search/results.aspx?qu=2038&View=msdn&st=b&c=0&s=1&swc=0



  • Wie fixt man das Problem?



  • Ich habe mir sogar schon für den 19. Januar 2038 einen Termin in Outlook eingetragen. Äh. Moment.

    Hihi. 😃 👍



  • fixer schrieb:

    Wie fixt man das Problem?

    Datumsroutinen verwenden, die auf 64 Bit basieren. Einige Compiler haben das bereits in der Stdlib, ich habe sowas für den GNU in Erinnerung. Weiß es nicht vom VC7.

    Jedes OS hat auch entsprechende Routinen dafür, unter Win z.B. OleDateTime, etc, diese kann man ebenfalls verwenden statt den Sachen aus der Stdlib.

    Ansonsten, nach 64 Bit konvertieren und Überlaufkontrollen/Plausibilitätskontrollen machen.

    Hängt ein bißchen vom Anwendungsfall ab, wie man hier vorgeht, ob es um Vergleiche geht, oder um die Speicherung von Zeitdaten.



  • Wegen 2038 siehe http://www.2038bug.com/

    zwiebelsuppe schrieb:

    (wozu man nach Perl und Python noch Ruby braucht,

    Ansonsten gäb es ja gar kein Fortschritt. Ich meine sonst hätte man auch nach Fortran oder COBOL sagen können, dass man keine weiteren Programmiersprachen mehr braucht (okay, bei einer Programmiersprache stimmt das auch ;))

    und warum man nicht html so
    erweitert hat, daß man Javascript nicht braucht, frage ich erstmal gar nicht)

    uh, das zeigt wiederum ein absolutes Missverständnis von dem was HTML ist!

    Optimizer schrieb:

    Die Antwort ist einfach. Es gibt mit Java und C# nicht zwei C++ Abkömmlinge. Wenn du ein bisschen tiefer in die Programmierung einsteigst, wirst du die Unterschiede schon merken - die teilweise gravierend sind.

    Java ist ja nicht wirklich an C++ angelehnt. Natürlich kannten die Designer C++ und es gibt gleiche Syntax Elemente. Aber ansonsten hat Java ja häufig einen eigenen Weg genommen.



  • IMHO basieren sogar recht viele Sprachen auf der C-Syntax - wogegen meinerseits auch nicht wirklich was einzuwenden ist. Aber natürlich ist es grob fahrlässig, daraus eine Ähnlichkeit der Sprachen abzuleiten.
    Wenn man es ein bisschen grober sieht, gibt es die ganzen Kontrollstrukturen genauso auch in BASIC, nur mit anderem Aussehen.



  • Optimizer schrieb:

    IMHO basieren sogar recht viele Sprachen auf der C-Syntax - wogegen meinerseits auch nicht wirklich was einzuwenden ist. Aber natürlich ist es grob fahrlässig, daraus eine Ähnlichkeit der Sprachen abzuleiten.
    Wenn man es ein bisschen grober sieht, gibt es die ganzen Kontrollstrukturen genauso auch in BASIC, nur mit anderem Aussehen.

    Ja, C ist eben derzeit die absolute Basissprache, ob man es mag oder nicht. Wenn man C beherrscht und Ahnung von OOP hat, dann kommt man auf irgend eine mehr oder weniger gute Weise mit allen populären Programmiersprachen klar: C++, C#, Perl, PHP, Java etc.



  • Ansonsten gäb es ja gar kein Fortschritt. Ich meine sonst hätte man auch nach Fortran oder COBOL sagen können, dass man keine weiteren Programmiersprachen mehr braucht<<

    Dies ist imho was ziemlich Anderes; zwischen Fortran und Cobol liegen Welten:
    die eine für technische gebildete Anwender und Rechen-orientierte Projekte,
    die andere für wirtschaftliche Verwaltungs- und Berechnungszwecke.

    Bei Perl-Python-Ruby liegt die Sache aber ein bischen anders. Alle drei entstanden
    innerhalb kurzer Zeit, haben dieselben Anwendungen im Auge (Scripting), basieren
    auf ähnlichen Konzepten und enstanden innerhalb weniger Jahre.
    Aber das nur nebenbei.

    Daß man für die Auszeichnung von Text auf Webseiten eine Sprache wie HTML braucht,
    und für selbst die minimalste Interaktivität (Pulldown-Menüs) schon eine zweite.
    zeigt, daß HTML als Wahl voreilig war. Hätte man besser gewartet, bis man bemerkt
    hätte, wie wichtig gewisse interaktive Features sind und die wesentlichen Elemente von Javascript in HTML übernommen, bräuchte man heute Sachen wie
    Javascript nicht.


Anmelden zum Antworten