C oder C++ - Lohnt es sich noch C zu lernen?



  • SeppSchrot schrieb:

    volkard schrieb:

    die kommenden autoren, also die, die mit thinking in c++ aufgewachsen sind, werden die bücher schreiben, mit denen die leute aufwachsen, die erstmal c++ kapieren werden.

    Das bleibt zu hoffen, und solche positiven Erwartungshaltungen sind mir sowieso viel lieber, als die "C++ ist längst veraltet"-Pessimisten.

    Was denn.. C++ auch schon?? 😕 😃

    Also lieber RollingStone, du kannst ruhigen Gewissens die nächste Zeit erstmal C lernen, und hast dann immer noch mehr als genug Zeit, dich dem C++ zu widmen.

    Denke ich auch. Danke für eure Ratschläge.



  • RollingStones schrieb:

    Was denn.. C++ auch schon?? 😕 😃

    ahm, ja. muß man zugeben.
    wir haben c++ die enorme sprachvielfalt zu verdanken, die um uns erblüht. im prinzip ist c++ viel viel besser als ruby, python, java und konsorten. aber c++ wird von einem standardisierungskommitee definiert, das den fernschreiber für den letzten schrei auf dem computersektor hält und wir haben weder farben noch netzwerk, sound, maus und so. offensichtlich gute und ganz einfach zu definierende sachen wie typeof brauchen jahrzehnte, um angenommen zu werden (vom übersetzngsmodell mal ganz zu schweigen). das ist wieder ein soziales problem (so, wie das, warum nicht c vor c++), c++ ist zwar am stärksten aber alle wissen, daß c++ von ehemals schwachen sprachen wie basic einfach überholt wird.
    (mit "am stärksten" meine ich am stärksten für saumäßig komplizierte und große programme. für kleine sachen hat c++ bereits abgedankt.)
    so kommt es, daß viele viele leute (zu recht!) mit c++ unzufrieden sind und ne neue sprache bauen. aber keine der neuen kann gegen c++ dann auf lange distanz anstinken, das konzept ist schon wirklich gut. und die neuen sprachen müssen ja auch anders sein, um wenigstens ein bißchen angenommen zu werden. nur ein c++ mit typoeof und anderer klammerung würde keiner wollen (leider).



  • volkard schrieb:

    RollingStones schrieb:

    Was denn.. C++ auch schon?? 😕 😃

    ahm, ja. muß man zugeben.
    wir haben c++ die enorme sprachvielfalt zu verdanken, die um uns erblüht. im prinzip ist c++ viel viel besser als ruby, python, java und konsorten. aber c++ wird von einem standardisierungskommitee definiert, das den fernschreiber für den letzten schrei auf dem computersektor hält und wir haben weder farben noch netzwerk, sound, maus und so. offensichtlich gute und ganz einfach zu definierende sachen wie typeof brauchen jahrzehnte, um angenommen zu werden (vom übersetzngsmodell mal ganz zu schweigen). das ist wieder ein soziales problem (so, wie das, warum nicht c vor c++), c++ ist zwar am stärksten aber alle wissen, daß c++ von ehemals schwachen sprachen wie basic einfach überholt wird.
    (mit "am stärksten" meine ich am stärksten für saumäßig komplizierte und große programme. für kleine sachen hat c++ bereits abgedankt.)
    so kommt es, daß viele viele leute (zu recht!) mit c++ unzufrieden sind und ne neue sprache bauen. aber keine der neuen kann gegen c++ dann auf lange distanz anstinken, das konzept ist schon wirklich gut. und die neuen sprachen müssen ja auch anders sein, um wenigstens ein bißchen angenommen zu werden. nur ein c++ mit typoeof und anderer klammerung würde keiner wollen (leider).

    Hm...verstehe.

    Ich denke aber mal, dass sich SeppSchrot verschrieben hatte und C gemeint hatte, was in diesem Kontext viel logischer wäre, da es sich hierbei ja um das Thema C <--> C++ und nicht C++ <--> diverse weitere Sprachen handelt.

    P.S.: @volkard: Wir wohnen ca. 20-25 (??) km voneinander entfernt. 😉



  • Was soll man sagen? Grace Hopper ist tot, COBOL nicht.

    C wird nicht aussterben, weil es tonnenweise an Programmen gibt, die auf C laufen und gewartet werden wollen. C++? dito.
    Da es in großem Stil immernoch billiger ist, irgendwo dran rumzustricken, als es einfach neu zu machen (selbst, wenn man die Schulung von Progrmamierern mit einberechnet) und meist auch wesentlich schneller, wird sich daran so schnell ja nichts ändern..



  • wenn du das so pingelig siehst, wird nichtmal Deplhi (nehmen wie delphi mal als sprache an) aussterben, denn delphi wird noch in schulen gelehrt und es spricht nichts dagegen, das in der nächsten generation nicht auch noch zu tun.



  • volkard schrieb:

    wenn du das so pingelig siehst, wird nichtmal Deplhi (nehmen wie delphi mal als sprache an) aussterben, denn delphi wird noch in schulen gelehrt und es spricht nichts dagegen, das in der nächsten generation nicht auch noch zu tun.

    Der Unterschied dazu ist aber, dass man Lehrpläne an Schulen schnell und kostenlos ändern kann, ich kenn das nur zu gut. 😃 😉



  • Hallo

    vielleicht ist C ja wirklich die "endgültige" Notation für die Systemprogrammierung, an der sich nicht mehr viel ändern wird, solange es PCs gibt;
    es scheint fast so. An der üblichen mathematischen Formel-Notation mit Punkt-, Strich- und Prozentrechnung sowie Bruchstrich, Integralzeichen etc. ändert sich ja auch schon seit über 200 Jahren fast nichts mehr.

    Grüße



  • Hobbyprogrammierer schrieb:

    vielleicht ist C ja wirklich die "endgültige" Notation für die Systemprogrammierung, an der sich nicht mehr viel ändern wird, solange es PCs gibt;
    es scheint fast so. An der üblichen mathematischen Formel-Notation mit Punkt-, Strich- und Prozentrechnung sowie Bruchstrich, Integralzeichen etc. ändert sich ja auch schon seit über 200 Jahren fast nichts mehr.

    c++ ist für systemprogrammierung besser geeignet.



  • volkard schrieb:

    Hobbyprogrammierer schrieb:

    vielleicht ist C ja wirklich die "endgültige" Notation für die Systemprogrammierung, an der sich nicht mehr viel ändern wird, solange es PCs gibt;
    es scheint fast so. An der üblichen mathematischen Formel-Notation mit Punkt-, Strich- und Prozentrechnung sowie Bruchstrich, Integralzeichen etc. ändert sich ja auch schon seit über 200 Jahren fast nichts mehr.

    c++ ist für systemprogrammierung besser geeignet.

    LOLLLLL!!!!!!!
    Deswegen ist Windows hautpsächlich in C geschrieben! Und UNIX (und derivate) sidn ALLE in C geschrieben (abgesehehn vom ur-unix welches in asm geschrieben war)

    C rulet!



  • llllllllllol schrieb:

    Deswegen ist Windows hautpsächlich in C geschrieben! Und UNIX (und derivate) sidn ALLE in C geschrieben (abgesehehn vom ur-unix welches in asm geschrieben war)

    hat historische gründe.



  • volkard schrieb:

    llllllllllol schrieb:

    Deswegen ist Windows hautpsächlich in C geschrieben! Und UNIX (und derivate) sidn ALLE in C geschrieben (abgesehehn vom ur-unix welches in asm geschrieben war)

    hat historische gründe.

    Ja, aber OOP ist ja eine Art Abstraktionsebene (Abstraktionsebene ist vllt nicht das richtige wort). Systemprogrammierung ist immernoch lowlevel programmierung.
    => C



  • lllllllllllllol schrieb:

    Ja, aber OOP ist ja eine Art Abstraktionsebene (Abstraktionsebene ist vllt nicht das richtige wort). Systemprogrammierung ist immernoch lowlevel programmierung.
    => C

    du machst gerade den fehler, systemprogrammierung als das zu definieren, was man in c macht.



  • volkard schrieb:

    lllllllllllllol schrieb:

    Ja, aber OOP ist ja eine Art Abstraktionsebene (Abstraktionsebene ist vllt nicht das richtige wort). Systemprogrammierung ist immernoch lowlevel programmierung.
    => C

    du machst gerade den fehler, systemprogrammierung als das zu definieren, was man in c macht.

    Du wirst nicht leugnen können, dass sich C++ zu einer höheren Sprache entwickelt hat als C. OOP ist ein provileg einer höheren sprache, wogegen C eher lowlevelmäßig ist. Und die STL tut den rest: Highlevel und bequem!

    Ich definiere Systemnprogrammierung mit lowlevel.
    Da ich C++ zu highlevel halte, würde ich C für systemprogrammierung vorziehen.



  • llllllllllllllllol schrieb:

    Du wirst nicht leugnen können, dass sich C++ zu einer höheren Sprache entwickelt hat als C. OOP ist ein provileg einer höheren sprache, wogegen C eher lowlevelmäßig ist. Und die STL tut den rest: Highlevel und bequem!

    du wirst nicht leugnen können, daß man mit c++ grundlegende datenstrukturen der systemprogrammierung sehr fein in klassen packen kann und dabei null zusatzkosten zur laufzeit hat. und das ist was gutes, das programmieren fällt leichter, geht schneller, ist fehlerärmer. als systemprogrammierer wird man natürlich nicht mit std::string oder RTTI um sich hauen.



  • volkard schrieb:

    llllllllllllllllol schrieb:

    Du wirst nicht leugnen können, dass sich C++ zu einer höheren Sprache entwickelt hat als C. OOP ist ein provileg einer höheren sprache, wogegen C eher lowlevelmäßig ist. Und die STL tut den rest: Highlevel und bequem!

    du wirst nicht leugnen können, daß man mit c++ grundlegende datenstrukturen der systemprogrammierung sehr fein in klassen packen kann und dabei null zusatzkosten zur laufzeit hat. und das ist was gutes, das programmieren fällt leichter, geht schneller, ist fehlerärmer. als systemprogrammierer wird man natürlich nicht mit std::string oder RTTI um sich hauen.

    Okay, aber wie gesagt: STL ist ja ein fester bestandteil von C++.
    Dauernd wird geprädigt, man solle die finger von char* lassen und stattdessen string nehmen.

    Möglich ist es natürlich in C++ Sytemnah zu programmieren. Fragt sich nur wie es in der Praxis aussieht.

    Meine Skepsis kommt wohl daher, dass ich bisher nur in C systemnah programmiert habe. Alles andere wird bei mir in C++ geschrieben.



  • llllllllllllllllllllllol schrieb:

    Dauernd wird geprädigt, man solle die finger von char* lassen und stattdessen string nehmen.

    jo, schlimm.

    Möglich ist es natürlich in C++ Sytemnah zu programmieren. Fragt sich nur wie es in der Praxis aussieht.

    es wird zum beispiel bei embedded systems nicht gemacht, weil die entscheidungsträger die gleichen vorurteile haben wie du.



  • volkard schrieb:

    llllllllllllllllllllllol schrieb:

    Dauernd wird geprädigt, man solle die finger von char* lassen und stattdessen string nehmen.

    jo, schlimm.

    Möglich ist es natürlich in C++ Sytemnah zu programmieren. Fragt sich nur wie es in der Praxis aussieht.

    es wird zum beispiel bei embedded systems nicht gemacht, weil die entscheidungsträger die gleichen vorurteile haben wie du.

    Das sind keine Vorurteile.

    Normalerweise nutz ich auch eher C++ da es bequemer und teils leistungsstärker ist.

    Aber icg finde: C passt sich dem problemgebiet der systemprogrammierung eher besser an als C++ welches sich für highlevel prjekte eignet.



  • lllllllllllllol schrieb:

    Ja, aber OOP ist ja eine Art Abstraktionsebene (Abstraktionsebene ist vllt nicht das richtige wort). Systemprogrammierung ist immernoch lowlevel programmierung.
    => C

    Schau dir mal den Linuxkernel genau an, der is groesstenteils OO, aber in C, weil Linus kein C++ mag 😉



  • farben noch netzwerk, sound, maus

    @volkard
    Kann es sein, dass du in deiner Programmierer-Laufbahn nicht über den PC-Tellerrand geblickt hast ?



  • Marcin schrieb:

    @volkard
    Kann es sein, dass du in deiner Programmierer-Laufbahn nicht den PC-Tellerrand geblickt hast ?

    Dieser Hinweis wurde vom C++ Forumbot eingefügt.

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten