Mein erster Dateibrowser



  • 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.


  • Mod

    Python ist definitiv die bessere Wahl, wenn es um allererste Schritte in der Programmierung geht, und die Motivation nicht so groß ist.



  • Fricky667 schrieb:

    Wade1234 schrieb:

    außerdem schreibt man nichts aus dem kopf. man schreibt sich das vorher auf, malt sich ein flußdiagramm und tippt das dann ein.

    Das haben sie wohl vor 40 Jahren so gemacht. 😃

    Das machen wir immer noch so. Wer Qualität produzieren will, wird dies auch immer so machen.

    Außer natürlich bei irgendwelchen trivialen Microprogrammen. Da hab ich das weder vor 40 Jahren gemacht noch mache ich das heute.

    VG



  • mgaeckler schrieb:

    Fricky667 schrieb:

    Wade1234 schrieb:

    außerdem schreibt man nichts aus dem kopf. man schreibt sich das vorher auf, malt sich ein flußdiagramm und tippt das dann ein.

    Das haben sie wohl vor 40 Jahren so gemacht. 😃

    Das machen wir immer noch so. Wer Qualität produzieren will, wird dies auch immer so machen.

    Außer natürlich bei irgendwelchen trivialen Microprogrammen. Da hab ich das weder vor 40 Jahren gemacht noch mache ich das heute.

    VG

    Flussdiagramme sind besonders sexy bei Nebenläufigkeit und funktionaler Programmierung eh? 😃

    Jaja, das ist halt Coding-Nostalgie.



  • [quote="Zwen++]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. [/Quote]

    Was verstehst du unter "richtige Ergebnisse"? Fenster malen? 3D-Shooter? C ist eine Programmiersprache mit der du, wenn dus denn willst, auf deinem Bildschirm den 5. Bildpunkt in der 36. Reihe einschalten kannst, indem du die zog hintereinander geschalteten Multiplex er auf der Hauptplatine, in der Grafikkarte und in der Steuerelektronik des Bildschirms so ansteuerst, dass du Zugriff darauf hast.
    Computerspiele machen nichts anderes, nur muss man vorher erst einmal stumpf Algorithmen lernen, die das alles berechnen.

    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.

    Stehen da keine Übungsaufgaben drin? Ich hab damals ein Schachbrett zeichnen und den Springer den kürzesten Weg gehen lassen oder Schiffe versenken in der Konsole programmiert. Google gibt dir bestimmt Übungsaufgaben.

    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.

    Ein Fenster ist eine einzige riesige Berechnung, sofern du nicht nur ppar Knöpfe und Textfelder an festen Positionen haben willst.

    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.

    Hol dir Algorithmen in C und arbeite das durch, also abtippen und experimentieren. Danach kannst du dich an SDL oder besser WinAPI machen.



  • SeppJ schrieb:

    und die Motivation nicht so groß ist.

    fehlende Motivation ist aber generell sehr ungünstig fürs Lernen. Der dramatischere Teil (Schlaganfallpatienten) fängt dann an (wenn es scheinbar nicht weitergeht) auf die Ergo- oder Physiotherapeuten zu schimpfen oder eine Einstellung/"Rationalisierung" einzunehmen a la: "die linke Hand braucht doch keiner".



  • eine kurze Zwischeninfo.

    Also SDL macht mich echt fertig sowohl in Visual Studio als auch in Codeblocks komme ich nicht weiter als Schritt 5 in Lazy Foos Tut.

    Bei Codeblocks zeigt er mir fehler : 0xc000007b an und bei Visual Studio findet er die libpng16 nicht obwohl ich sie noch einmal extern heruntergeladen und eingepflegt habe.

    Auf Grund dessen habe ich mich dazu entschlossen C++ in Verbindung mit SFML zu lernen, da es vielleicht sinnvoller ist als Python, da ich die meisten Befehle von C in C++ auch benutzen kann.

    Hänge jetzt schon drei Tagen an SDL aber SFML konnte ich in 10 Minuten bearbeitungsfertig einstellen.

    Ich schätze der Fehler hat mit 32 oder 64 Bit zutun, ich habe aber beide Libs und Includes ausprobiert, also i686 und x86. Bei x86 kommt er mit IMG_init nicht klar aber bei i686 wie gesagt der Fehler mit 0xc000007b. Habe schon versucht Framework neu zu installieren, leider ohne erfolg.


Anmelden zum Antworten