Mein erster Dateibrowser


  • Mod

    Zwen++ schrieb:

    SeppJ schrieb:

    Zwen++ schrieb:

    An ein Flußdiagramm habe ich bis jetzt ehrlich gesagt noch nicht gedacht, da ich ja noch ziemlich am Anfang bin. Ich Bin jetzt gerade mit den Grundlagen bzw. mit dem Buch von Juergen Wolf fertig.

    Dann ist der nächste Schritt leider, alles wieder zu vergessen und von vorne anzufangen:
    https://www.c-plusplus.net/forum/272350

    Nein, das ist kein Scherz, sondern Ernst. Man sieht deinem Code unmittelbar an, dass du nach Jürgen Wolf gelernt hast.

    Also ich wusste das mein Code schlimm ist, aber ich dachte eher auf Grund der wenigen "Wege" die ich kenne. Ist das so schlimm? Könnt Ihr mir dann ungefähr sagen wie es besser aussehen würde? Mehr Pointer bzw. individuelle Speicherreservierung? Also mir ist schon klar, dass die Arrays hier Haufen Speicher fressen, aber ich schätze es haengt an mehr oder?

    Das kann man nicht mit ein paar Schlagworten reparieren. Jürgen Wolf ist einfach ein schlechter Programmierer an sich, und von C hat er auch keine Ahnung. Was ziemlich schlecht ist, da sich C von Profis an Profis richtet und nicht an Möchtegernprogrammierer mit Halbwissen. Und dann schreibt dieser Möchtegernprogrammierer mit Halbwissen auch noch ein Buch darüber, und verbreitet sein sogenanntes Wissen weiter…


  • Mod

    Fricky667 schrieb:

    Ein wenig unstrukturiert, aber die Codes von Einsteigern sehen letztlich alle so ähnlich aus.

    Weil die überwiegend bei schlechten Lehrern lernen! Nur weil viele Leute etwas falsch machen, wird's dadurch nicht richtig. Guck dir mal im Gegensatz dazu an, wie ein Anfänger programmiert, der K&R gelesen hat. Das schaut schon ganz anders aus.



  • SeppJ schrieb:

    Zwen++ schrieb:

    SeppJ schrieb:

    Zwen++ schrieb:

    An ein Flußdiagramm habe ich bis jetzt ehrlich gesagt noch nicht gedacht, da ich ja noch ziemlich am Anfang bin. Ich Bin jetzt gerade mit den Grundlagen bzw. mit dem Buch von Juergen Wolf fertig.

    Dann ist der nächste Schritt leider, alles wieder zu vergessen und von vorne anzufangen:
    https://www.c-plusplus.net/forum/272350

    Nein, das ist kein Scherz, sondern Ernst. Man sieht deinem Code unmittelbar an, dass du nach Jürgen Wolf gelernt hast.

    Also ich wusste das mein Code schlimm ist, aber ich dachte eher auf Grund der wenigen "Wege" die ich kenne. Ist das so schlimm? Könnt Ihr mir dann ungefähr sagen wie es besser aussehen würde? Mehr Pointer bzw. individuelle Speicherreservierung? Also mir ist schon klar, dass die Arrays hier Haufen Speicher fressen, aber ich schätze es haengt an mehr oder?

    Das kann man nicht mit ein paar Schlagworten reparieren. Jürgen Wolf ist einfach ein schlechter Programmierer an sich, und von C hat er auch keine Ahnung. Was ziemlich schlecht ist, da sich C von Profis an Profis richtet und nicht an Möchtegernprogrammierer mit Halbwissen. Und dann schreibt dieser Möchtegernprogrammierer mit Halbwissen auch noch ein Buch darüber, und verbreitet sein sogenanntes Wissen weiter…

    Wolf kennt C noch aus DOS-Zeiten, wo fflush(stdin) und conio.h noch sexy waren. Und dieses C lehrt er seine Leser. Vielleicht hockt er selber noch vor einer Windows95-Kiste, wo er seine Beispiele testet.



  • Naja dann werde ich wohl Wolfgang sein Buch verbrennen und mir Python zu Gemüte führen. Das K&K Buch werde ich mir dann bei naechster Gelegenheit zulegen.

    Danke für die ausführliche Erläuterung und eure Hilfe.

    EDIT: Oder doch vielleicht K&R?



  • SeppJ schrieb:

    Fricky667 schrieb:

    Ein wenig unstrukturiert, aber die Codes von Einsteigern sehen letztlich alle so ähnlich aus.

    Weil die überwiegend bei schlechten Lehrern lernen! Nur weil viele Leute etwas falsch machen, wird's dadurch nicht richtig. Guck dir mal im Gegensatz dazu an, wie ein Anfänger programmiert, der K&R gelesen hat. Das schaut schon ganz anders aus.

    Okay, aber K&R ist meiner Meinung nach nicht für Anfänger mit null Vorwissen geeignet. Hätte sich der Zwen K&R als erstes C-Lehrbuch geholt, hätte er vermutlich keinen Bock mehr auf C und sich einer anderen Sprache zugewandt.



  • Zwen++ schrieb:

    Naja dann werde ich wohl Wolfgang sein Buch verbrennen und mir Python zu Gemüte führen.

    Vergiss Python. Bleib bei C, aber vergiss auch den Wolf. C ist schon cool. C ist sozusagen die Mutter vieler heute eingesetzter Programmiersprachen. 🙂



  • Dann werde ich wohl mir K&R zulegen.

    Habe mich gerade bisschen durch den einen Thread über Juergen W. gewühlt.

    In dem Buch gibt es ein Kapitel über Funktionen mit Pointern, in dem Kapitel davor hieß es noch dass, Pointer nur eine Adresse beinhalten können.

    Funktionen mit Pointern sind mir auch irgendwie schwer gefallen. Also ich wusste nicht genau, was ich jetzt eigentlich mache, wenn ich sie benutzt habe.

    Echt ärgerlich so etwas -.-


  • Mod

    Python bietet ganz sicher den schnelleren Erfolgsfaktor. Man muss schon ein ziemlicher Python-Profi sein, um die Schwachstellen der Sprache überhaupt zu erkennen. Bei C ist es ziemlich genau umgekehrt: Die Einstiegshürde ist enorm und man weiß die Sprache erst so richtig zu schätzen, wenn man sie wirklich gut beherrscht.

    Ich kenne durchaus Leute, die direkt mit K&R angefangen haben, sogar ohne vorherige Programmiererfahrung. Die haben dann auch richtig tollen Code geschrieben. Man sollte aber vielleicht dazu sagen, dass das 1. ziemlich kluge Leute waren und 2. dass sie C lernen mussten, also niemals die Wahl hatten, aufzugeben.

    @Zwen++: Hang dich nicht zu sehr an den Zeigern auf. Ein Programm wird nicht besser oder schlechter, weil es Zeiger beinhaltet. Bei Jürgen Wolf lernst du einfach nicht, in den Strukturen und Mustern zu denken, die beim Programmieren in C (oder allgemein) gefragt sind. Aber ja, er macht auch vieles technisch falsch.



  • SeppJ schrieb:

    @Zwen++: Hang dich nicht zu sehr an den Zeigern auf. Ein Programm wird nicht besser oder schlechter, weil es Zeiger beinhaltet. Bei Jürgen Wolf lernst du einfach nicht, in den Strukturen und Mustern zu denken, die beim Programmieren in C (oder allgemein) gefragt sind. Aber ja, er macht auch vieles technisch falsch.

    Das höre ich gerne. Ich hatte zwischen durch daran auch mal gedacht das Thema auch zu überspringen. Aber es hieß überall (auch im Buch), wer Pointer versteht, der hat C im großen und ganzen eigentlich kapiert bzw. sind die Themen danach nicht mehr allzu anspruchsvoll. Deswegen habe ich mich jetzt selbst durch den Fleischwolf gezogen 🙄 .



  • Zwen++ schrieb:

    Aber es hieß überall (auch im Buch), wer Pointer versteht, der hat C im großen und ganzen eigentlich kapiert bzw. sind die Themen danach nicht mehr allzu anspruchsvoll.

    Naja, das ist nur die halbe Wahrheit. Indirektion haste in vielen Sprachen, wenn auch versteckt. C's wirkliche Stärke ist seine Maschinennähe. Der Abstraktionsgrad von C ist sehr gering, weshalb C überall dort eingesetzt wird, wo schlanke und schnelle Programme wichtig sind (Embedded Systems mit wenig Memory und Taktfrequenz). Man sagt, C sei eine Art plattformunabhängige Assemblersprache. Googletip: "Spirit of C".



  • Zwen++ schrieb:

    Das habe ich mir schon fast gedacht, ich sollte demnächst auch an die Speicherreservierung denken schätze ich mal.

    nein du musst jetzt "c standardbibliothek" in die suchmaschine eingeben und dir eine funktion raussuchen, mit der du das Tabulatorzeichen '\t' und den eigentlichen string in einen neuen string einfügen kannst.

    An ein Flußdiagramm habe ich bis jetzt ehrlich gesagt noch nicht gedacht, da ich ja noch ziemlich am Anfang bin. Ich Bin jetzt gerade mit den Grundlagen bzw. mit dem Buch von Juergen Wolf fertig.

    also es ist einfacher, erst flussdiagramme (oder pseudocode geht auch) zu erstellen und anhand dieser dann den code zu entwickeln.

    Danke für die Hilfe, ich werde den "Browser" noch ein bisschen erweitern und dann mal schauen, was ich als nächstes mir vornehme. Was ich mir vorstellen kann, dass ganze vielleicht in Verbindung mit Wxwidgets, dazu müsste ich aber erst einmal die Funktionen von Wxw mir aneignen 🙂 .

    du kannst ja auch die win32api nehmen. das ist weiterhin c.

    Fricky667 schrieb:

    Das haben sie wohl vor 40 Jahren so gemacht. 😃

    du bist bestimmt so einer, der eine platine einfach mit irgendwas bestückt und dann hofft, dass es dann funktioniert. 🙄



  • Wade1234 schrieb:

    du bist bestimmt so einer, der eine platine einfach mit irgendwas bestückt und dann hofft, dass es dann funktioniert. 🙄

    Irgendwann ist in der Tat der Zeitpunkt gekommen, wo man das tun muss. 🙂



  • Fricky667 schrieb:

    Irgendwann ist in der Tat der Zeitpunkt gekommen, wo man das tun muss. 🙂

    ja aber nicht wenn man gerade angefangen hat, eine programmiersprache zu lernen.



  • Wade1234 schrieb:

    Fricky667 schrieb:

    Irgendwann ist in der Tat der Zeitpunkt gekommen, wo man das tun muss. 🙂

    ja aber nicht wenn man gerade angefangen hat, eine programmiersprache zu lernen.

    Ich glaube, auch der Progammierer-Neuling wird sich wie ein Schneekönig freuen, wenn er etwas Lauffähiges hinbekommen hat.

    Erfolgserlebnisse sind ebenso wichtig, wie auch Fehler zu machen. Im konkreten Fall weiß der Zwen vermutlich gar nicht, wieso Wolf ein false prophet ist. Er muss das einfach glauben, aber ich fürchte es ist für ihn nicht plausibel, nur weil es viele sagen.



  • Wade1234 schrieb:

    also es ist einfacher, erst flussdiagramme (oder pseudocode geht auch) zu erstellen und anhand dieser dann den code zu entwickeln.

    Hm, das halte ich für ein Gerücht. Ich habe auch mal eine Zeit lang in einer Programmier-Firma gearbeitet und dort hat wirklich niemand Flussdiagramme oder Pseudocode erstellt. Ich fand das immer viel unübersichtlicher als direkt Code zu lesen.

    Was ich dagegen manchmal hilfreich fand, waren UML-Klassendiagramme. Oder allgemein so ein bisschen was in der Richtung Anwendungsfalldiagramme. Beides kann einen guten Überblick über große Software verschaffen.

    Aber Flussdiagramme? Halte ich für komplett nutzlos.



  • wob schrieb:

    Aber Flussdiagramme? Halte ich für komplett nutzlos.

    besser sind state charts.



  • Flußdiagramme sind eigentlich nur praktikabel für einen Anfänger, da hat "Wade1234" - mMn - schon recht, aber für komplexe Programme eignen sie sich nur noch bedingt.
    Man kann dann in C++ Klassendiagramme erstellen, das halte ich für sinnvoll, in C kann man ein Diagramm einer wichtigen Daten-Struktur erstellen und Zugriffe von Funktionen darauf darstellen.
    Flußdiagramme und Pseudo-Code sind - mMn - nicht sehr praxistauglich...ein erfahrener Programmierer sollte sein Programmdesign im Kopf erstellen können und dann, wenn nötig, vielleicht als Konzept auf Papier, aber zuerst seitenlange Flußdiagramme zu erstellen, halte ich für unproduktiv 😉



  • Ja wie auch immer. Auf jeden Fall sollte man sich vorher Gedanken machen, wie das Programm ablaufen soll. Wer möchte kann sich gleich am Anfang auch noch einen dicken Wälzer über UML und Software-Ergonomie kaufen . 🙄



  • oder, bei nicht-trivialen Aufgabenstellungen, vorher Gedanken machen über die passenden Datenstrukturen/Abstraktionen. Hat man die richtigen Datenstrukturen oder Abstraktionen für ein Problem gefunden, folgen passende einfache Algorithmen oft (wenn auch vielleicht nicht immer) fast zwangsläufig.



  • Wollte eine kurze Rückmeldung geben.

    Also ich hab mich jetzt ein wenig an SDL getraut. Dazu das Tut von Lazy Foo, welches ich in den nächsten Tagen durcharbeiten möchte.

    Bin jetzt bei Lektion 4 bzw. habe ich mir die Beispiele mit eigenen Deklarationen abgeschrieben. Ich fang aber Morgen noch einmal von vorne an, weil ich es noch nicht den Überblick habe bzw. nicht alles nachvollziehen kann.

    Ich spiele aber auch mit dem Gedanken mit Python anzufangen.
    Ob das Sinnvoll ist weis ich nicht, mit C kann man ja alles machen. Aber irgendwie erscheint mir das mit anderen Sprachen einfacher.

    Mir ist bewusst, dass ich Programmieren lieber vergessen sollte, wenn die Schwierigkeit ein Problem für mich wäre.

    Vielleicht liegt es auch daran, dass man bei C erst später richtige Ergebnisse präsentieren kann. Und das ich Gestern fast ne Stunde gebraucht hab um die SDL in Codeblocks reinzubekommen.

    Ich schätze mich selbst irgendwie als zu langsam ein beim lernen.
    Das Buch von Juergen Wolf(ich weis ich verbrenns bald) habe ich mir Ende April geholt. Gelesen habe ich es aber eher selten, da ich nach der Arbeit keine Lust mehr hatte. Anfang Juli war ich ca. bei Seite 200 und habs seit Vorgestern durch. Aber ja irgendwie kann ich noch nichts sinnvolles anstellen.

    Nur so Sachen wie evtl. Dateien Suchen auf dem System und da etwas ändern oder ein Programm das irgendwas berechnet. Naja wenn ich jetzt die SDL Bibliothek lerne kann ich Fenster erstellen und darin noch etwas anstellen.

    Ich weis ich muss meinen Weg selbst finden und einfach üben üben üben aber falls ihr noch irgendwie Tipps habt wäre ich wirklich dankbar. Ein Englisches Buch zuzulegen habe ich irgendwie noch ein bisschen Angst. Also ich kann zwar Englisch aber ich hab ja noch nicht mal richtigen Bezug zur Informatik. Also ich habe nichts studiert in dieser Richtung. Evtl. fehlt mir dann der Kontext es richtig zu verstehen. Davor habe ich Angst. Und das Deutsche Python Buch habe ich bereits da liegen.


Anmelden zum Antworten