Erlernen der Programmierkunst



  • Kopfhörer 2000 schrieb:

    Statemens

    Das ist mal ein schöner Vertipper zum Jahresabschluss mit Marc++us' Staatsmännern(s).

    Sebastian: Nein, durch ein einen Irrgarten zB (A star spricht man das Ding, vielleicht hilfts beim Herrn Gugel, mal danach zu suchen?).



  • Nein, da kommt nur so ein Dreck wie:

    "Be A Star"
    Naja irgendwann find ich die Lösung...



  • Naja irgendwann find ich die Lösung...

    Hier findest du eine ganze Menge zu A*.

    Hier kannst du auch starten:

    http://en.wikipedia.org/wiki/A-star_search_algorithm

    Nach was hast du denn gesucht? Ich finde selbst mit so simplen Sachen wie "A star" algorithm oder "A star" search hilfreiche Seiten.



  • A* Pathfinding Tutorial

    ...ist nur ein Beispiel.



  • Ups. Naja damit befass ich mich erst im nächsten Jahr. 😋



  • Hi,

    seht ihr, das meinte ich. A* ist ja jetzt wirklich lächerlich einfach, um den zu verstehen, braucht man keine einzige Stunde Informatikunterricht (was ich auch noch nicht hatte).

    EDIT: dass -> das

    ChrisM



  • Hoi.

    Also ich programmiere nun auch schon einige Jahre und bin gerade am Ende meines ersten Semesters meines Informations- und Kommunikationstechnik Studiums.

    Zum einen muß ich sagen das ich bisher sehr viel über programmieren gelernt habe ohne Studiert zu haben. Zum anderen muß man sagen das man im Studium mit Themen konfrontiert sind, die sehr interessant und auf irgendeine Weise auch bestimmt hilfreich sein kann, die man aber so privat nie durchgenommen hätte.

    Und um es mal klar auszudrücken! Eine Programmiersprache zu beherrschen ist nur die halbe Miete (wenn überhaupt). Die Lösung des eigentlichen Problems ist die viel größere Kunst!
    Was nützt es mir wenn ich C++ in und auswendig kenne, aber mir keinen Algorithmus erarbeiten kann um ein bestimmtes Problem zu lösen.

    Daher ist ein Studium in Informatik alleine noch lange nicht ausreichend um ein Programmierprofi zu sein.
    Die Programmierung selbst ist ja nur das Werkzeug um eine Problemlösung in dem Computer verarbeiten zu lassen. DIe Lösung des Problems muß man sich aber erstmal überlegen. Sprich hier braucht man auch zumindest Mathematische und je nach Problem auch noch ganz andere Kenntnisse.
    Ich kann keine Bildbearbeitungssoftware schreiben, wenn ich von Farben und Farbmanipulation keine Ahnung habe...



  • ChrisM schrieb:

    A* ist ja jetzt wirklich lächerlich einfach, um den zu verstehen, braucht man keine einzige Stunde Informatikunterricht (was ich auch noch nicht hatte).

    Es geht auch garnicht darum, daß dieser Algorithmus so wahnsinnig kompliziert ist. Es geht vielmehr darum, daß dieser Algorithmus aus einer umfassenderen Theorie hervorgegangen ist, die auch für viele andere Probleme hervorragende Lösungen bietet. Solche Theorien schlagen Brücken zwischen verschiedenen Problemstellungen und darum geht es doch. Ich will mich nicht jedes mal für jedes Problem hinsetzen müssen um den passenden Algorithmus dafür zu konstruieren. Ich sehe, oha... das wird ein Graph und was suchen wir? Kürzester Weg... okay, hab ich hier schon fertig programmiert, muß nur noch angepaßt werden oder ich verwende gleich die Boost Graph Library. Aber wenn ich die Theorie nicht kenne und nicht weiß welche Probleme sie lösen kann, dann muß ich die Lösungen immer wieder neu erfinden. Und das geht auf Dauer ziemlich auf die Nerven...

    Damit ich hier jetzt nicht falsch verstanden werde: Es müssen immer wieder neue Algorithmen gefunden werden, es gibt nicht eine Theorie, die zu allem die passende Lösung liefert, aber wenn vor einem Problem stehe wo's das gibt, dann isses doch blöd das nicht auch auszunutzen.
    Theorie ist nicht nur grau und manchmal gibt es wirklich nichts praktischeres als eine gute Theorie.

    MfG Jester



  • @TeeJay und @Jester,
    Danke, ihr redet mir aus der Seele 🙂



  • Ja ich hab ja einfach gesagt wie es ist.

    Alleine einen Thread zu eröffenen um so einen Blödsinn zu diskutieren zeigt eigentlich das man sich noch nicht wirklich mit Programmieren beschäftigt hat.

    Ich bin kein Vollprofi, aber ich habe schon so ziemlich viel ausprobiert.
    Sprich ich hab mich schonmal an einem Webserver, Bildbearbeitung und vielem mehr versucht.
    Die Ergebnisse waren zwar akzeptabel, aber natürlich weit von dem entfernt, was professionell entwickelte Software bietet.

    Aber alleine wenn man sich mal damit befasst und dann merkt das man sich erstmal Protokoll, oder Algorithmen aneignen muß um sein Projekt irgendwie verwirklichen zu können, merkt man ganz schnell das Programmieren nicht einfach nur daraus besteht Code in die Machine zu hacken.

    Ein Webserver muß ja auch ein Protokoll haben mit dem er sich mit dem Browser "unterhalten" kann. So ein Protokoll muß man natürlich nicht neu erfinden, da es HTTP ja schon gibt.

    Aber wenn man sich mal überlegt was für eine Arbeit es wohl war sich ein solches Protkoll auszudenken, dann sieht man auch das man erhebliche Vorarbeit leisten muß, bevor man eigentlich anfangen kann selbst etwas zu schreiben.

    Auch wenn man gerne sagt das man das Rad nicht zweimal erfinden soll, oder doch am besten auf bestehende Bibliotheken zurückgreifen soll, verfolge ich mehr den Ansatz es zumindest selbst einmal zu versuchen, da ich persöhnlich immer ganz gerne wissen möchte was genau dahinter passiert und wie es geht.

    Wer mit VC++ arbeitet und die MFC Bibliothek benutzt, der kann ganz einfach eine Klasse benutzen um sich eine Webseite bequem mit zwei Zeilen Code aus dem Netz zu saugen.

    Das ist schön wenn man auf die Schnelle ein Programm zusammenbasteln will.

    Aber meiner Meinung nach ist das nur die halbe Miete. Für mich ist das dann mehr ein Baukastensystem aus dem ich mir ein paar große Teile herauspicke und miteinander verbinde.
    Der Lerneffekt ist dabei einfach nicht der selbe.

    Somal man (wenn man es selber neu macht) immer die gute Möglichkeit hat eigene gewünschte Funktionen zusätzlich einzubauen.

    Ich will damit jetzt nicht sagen, das jeder der MFC benutzt nicht programmieren kann, aber vielleicht sollte man sich ab und zu auch mal etwas mehr mit dem auseinandersetzen was hinter dem ganzen Code steckt.
    Dann wird auch ersichtlich das Programmieren weit mehr ist als ein paar Codezeilen einzutippen.


Anmelden zum Antworten