Beste Sprache um Algorithmen zu lernen



  • Die beste Sprache um Algorithmen zu lernen ist für mich ganz klar Java. Da stimmt wirklich alles. Die Sprache ist einfach, aber ausreichend schnell. Die IDEs sind vorbildlich und nehmen einen nervige Fehler schon beim Eintippen ab und man hat zur Visualisierung gleich mehrere GUIs eingebaut, zudem ist es ziemlich unabhängig von der Plattform.

    Bei allen anderen Sprachen fehlt irgendwas oder ist etwas unnötig kompliziert. Wer viel Lebenszeit zu verschenken hat, der kann Algos natürlich auch mit anderen Sprachen lernen, da ja die Sprache an sich ziemlich egal ist.

    Den mit Abstand besten plattformunabhängigen Workflow habe ich mit Java erlebt, dann kommt eine Weile gar nichts und dann irgendwann mal C++ mit Qt-Creator, da nervt das C++ leider immer wieder beim lernen der Algos. Schließloch will man sich um die Algos kümmern und sich nicht ewig mit den Grundlagen der Programmiersprache aufhalten müssen. Wir leben schließlich nicht mehr in den 90er.



  • Troll 😡 👎



  • Ja natürlich, wenn man Java als beste Sprache für was ansieht, ist man gleich ein Troll. Das Java so erfolgreich ist, ist doch nicht meine Schuld.



  • DerAndroide schrieb:

    Ja natürlich, wenn man Java als beste Sprache für was ansieht, ist man gleich ein Troll. Das Java so erfolgreich ist, ist doch nicht meine Schuld.

    Ich glaube kaum, dass Java im Algorithmenentwurf oder Algorithmenlehren erfolgreich ist (und darum geht es in diesem Thread).

    Spiele, Bildbearbeitungsprogramme, Suchmaschinen, Datenbanken sind quasi alle in C oder C++ geschrieben.



  • Weil du hier von Dingen mit sehr hohen Performanceanforderungen sprichst.
    Zum Algorithmen lernen finde ich Java ebenfalls gut geeignet.



  • Ethon schrieb:

    Weil du hier von Dingen mit sehr hohen Performanceanforderungen sprichst.
    Zum Algorithmen lernen finde ich Java ebenfalls gut geeignet.

    Dieser Meinung kann man sein. Aber plattformunabhängiger Workflow und Erfolg von Java ist kein gültiges Argument (sogar ein nachweisbares Gegenargument).



  • An der Uni haben wir mit Java gelernt, an der FH mit Pascal. Pascal ist meiner Meinung nach eine tolle Lehrsprache aber Datenstrukturen sind mit echter Objektorientierung doch schöner.
    C++ hat den Nachteil dass man dangling Pointer und ähnliches haben kann, das ist weniger geeignet wenn man sich auf das Lernen konzentrieren möchte.
    Wenn man zb eine Hashtable implementiert ist es blöd wenn man die Sprache selbst nicht wirklich beherrscht.

    Aber das ist aus der Sicht von jemandem, der selbst schon programmieren konnte.



  • Ethon schrieb:

    An der Uni haben wir mit Java gelernt, an der FH mit Pascal. Pascal ist meiner Meinung nach eine tolle Lehrsprache aber Datenstrukturen sind mit echter Objektorientierung doch schöner.

    Ich habe noch nie Vererbung gebraucht um eine Datenstruktur zu implementieren und sehe auch nicht, wie das helfen sollte. Kannst du ein Beispiel bringen?

    C++ hat den Nachteil dass man dangling Pointer und ähnliches haben kann, das ist weniger geeignet wenn man sich auf das Lernen konzentrieren möchte.
    Wenn man zb eine Hashtable implementiert ist es blöd wenn man die Sprache selbst nicht wirklich beherrscht.

    Kommt auf den Lehrer drauf an. Ich habe den Sedgewick gelesen, der C verwendet hat, und ich fand das super, da kaum Boilerplate. Wenn der Lehrer kompetent ist, kann man die dangling Pointer gut vermeiden. Ich sehe auch nichts schlimmes daran, erstmal alles mit globalen Variablen zu machen.



  • Java nicht umsonst als Lehrsprache sehr oft eingesetzt, eben weil sie sich besonders gut eignet um Algorithmen und Datenstrukturen zu lernen. Es ist die beste Sprache für diesen Zweck.

    Aber hier in diesem Forum gibt es ja nur C++ auf der Welt und alles andere ist nur ein Kompromiss. Ich lerne auch C++ aber finde es zum kotzen im Gegensatz zu Java, aber wenn man wirklich die letzte Performance will, dann muss man halt leider ins Klo greifen.



  • Ach wisst ihr was? Mir geht C++ eh auf die Nerven und viele Leute hier im Forum(nicht alle), mit ihrem godlike C++ Geschwafel, auch.

    Bye bye C++ und C++-Forum


Anmelden zum Antworten