Programmieren: Literaur gesucht

Hallo,

eine Frage, hat jemand einen Tipp zu empfehlenswerter Literatur (freie e-books beorzugt) zum Thema C Programmierung allgemein bzw. mit Fokus auf Microcontroller bzw. Arduino im speziellen?

Hintergrund ist das ich durchaus einen Sketch so zum Laufen bekomme wie ich will - gelegentlich mit etwas Hilfe hier im Forum, aber mein Programmierstiel sicher nicht gut ist. Einige Arduino Bücher die ich gelesen habe finde ich jetzt nicht so toll weil genau dieser Teil der "sauberen" programmierung sehr kurz kommt. Auf der anderen Seite kenne ich klassische C Literatur die dann aber in erster Linie die PC Programmierung über tausende Seiten "wissenschaftlich" behandelt und damit das andere Extrem ist...

Christian

http://popovic.info/html/arduino/arduinoUno_1.html

Hallo Christian,
deine Frage nach "sauberer Programmierung" finde ich irgendwie recht interessant...

Nach meinem Empfinden kannst du dir einen "sauberen" Stil nur selbst aneignen, indem du dir VOR Beginn der Entwicklung eines Projekts ausführliche Gedanken dazu machst, was du eigentlich genau machen willst. Heißt: Erstmal einen groben Plan auf dem Papier entwerfen und Step by Step die einzelnen Details dazu ausarbeiten. Oft merkt man dabei schon, dass das eine oder andere klappt oder katastrophal enden wird. Diese Detailarbeit kannst du sogar fast bis auf Code-Ebene hinunter fortsetzen.

Die "Programmier-Handschrift" als solche ist oft recht individuell - was DU gut lesen und verstehen kannst, ist für Andere vielleicht total haarsträubend oder vollkommen banal. Hier kommt m.E. die eigene Erfahrung ins Spiel, die dir wahrscheinlich niemand "beibringen" kann. Letztendlich kannst du ja bei erfolgreichem Abschluß deiner Arbeit hingehen und alles "aufräumen". Also alles sauber gruppieren, kommentieren, sortieren etc.

Und egal ob irgendwo Kilometer lange wissenschaftliche Abhandlungen aufgelistet werden - oder ob nur kurze Befehls-Gruppen gezeigt werden die irgend eine Kleinigkeit darstellen... "Sauberkeit" in einem Programm kannst du dir wahrscheinlich nur selbst aneignen und von niemandem "vorgeben" lassen. Letztendlich steht und fällt vieles, wie und ob irgendwelche kritischen Teile eines Programmes kommentiert werden.

Ich glaube, hier könnte man einen Roman zu schreiben und dennoch zu keinem Ergebnis kommen... studierte Informatiker in unseren Reihen hier (ich bin selbst KEINER davon) werden sicherlich noch ganz andere Statements dazu abgeben können.

Obiges ist nur meine bescheidene Meinung dazu.
Gute Bücher dazu kenne ich eh keine...
Rudi

Ich kann Christian gut verstehen, habe ziemlich das gleiche Problem.

Die Einführungsbücher sind mittlerweile zu trivial, anderes zu aufgeblasen und tiefgehend für mich.
Randbemerkung: ich betrachte mich nicht als Programmierer, sondern als Zusammenstückler mit Basiswissen :sunglasses:

Also lese ich hier fleissig mit und speichere mir Bookmarks mit interessanten und wissenswerten Themen - an die ich im entscheidenden Moment dann wieder nicht mehr erinnere :confused:

Grundsätzlich kann auch ich Christian sehr gut verstehen.

Egal was man schon wie oft vorher gemacht hat - wenn ich neu in eine Materie einsteige (wie vor gut 1 Jahr beim Arduino) werde ich erstmal erschlagen von all dem Drumherum und tausenden Tipp und Hinweisen oder so. Erst im Laufe der Zeit stellt sich dann ein tieferes Verständnis ein - und dann bekommt man auch ein Gefühl dafür, was man wie machen oder besser sein lassen sollte. Aber man wächst ja mit den Aufgaben...

Glaube mal Klaus, ich vermute nicht nur du hast eine elendig lange Favoriten-Liste, wo die oder die oder die (un-)sinnige Seite gespeichert ist und eh nix mehr gescheites drin findet :wink:

Es kommt auch darauf an was du mit "sauber" meinst. Allgemeine Bücher über eine Programmsprache beschränken sich natürlich größtenteils darauf die Sprache zu vermitteln. Das außen herum wird dabei meistens nur nebenbei behandelt.

Wie gut dann das Programm aussieht kann man auch zwei Ebenen sehen:
1.) Wie gut ist der Code auf einer kleinen Ebene (z.B. innerhalb einer Funktion)
2.) Wie gut ist das gesamte Programm strukturiert, d.h. Software Design

Du kannst das erste gut im Griff haben und trotzdem ein grauenhaftes Programm schreiben, weil es an Punkt 2 mangelt. Daran scheitern auch viele professionelle Projekte.

Also müsste sich mal jemand hinsetzen und ein "Arduino Webbrowser Favoriten Buch" schreiben. Oder mehrere, hat ja dann jeder ein anderes... :smiley: