Schnipselprogrammierung versus Projektmanagement

  • Hallo René,

    ich "hänge" mich hier einfach mal dran. Bin gerade mal wieder an deinem Turtle-Roboter dran. Die Serie habe ich das erste mal in relativ kurzer Zeit durchlaufen. Ich hatte zu dieser Zeit bereits mehrere solcher kleiner Gefährten. Mir haben die mitgelieferten Programme meist nicht so gefallen und so habe ich die Programme umgeschrieben und erweitert. Das einzige was ich dabei benutzte waren Funktionen und so gefällt mir deine Variante, diese in Modulen oder gar Klassen zu plazieren umso mehr. Ich würde dieses Thema in keine Plauderei verpacken. Dafür sind sie viel zu interessant. Die Plauderei macht mich meist ziemlich heiß auf ein Thema, so dass ich dann nach Videos suche, in denen diese Dinge dann detailiert erklärt werden. Da war z.B. mal das Thema KI - das fand ich auch wahnsinnig spannend.

    Was auch ein Thema wäre, was mich immer wieder interessieren würde : Sich in einer Libary zurecht zu finden und die möglichen Funktionen darin zu erkunden. Was den Roboter betrifft, würde ich mich sehr freuen, wenn das Thema doch noch "weiterleben" würde. Ich habe gestern einen sehr schönen, druckbaren Roboter ( ähnlich einem Industrieroboter ) auf thingiverse.com/ gefunden. Das wäre doch auch was interessantes. Ansonsten, kann ich mich immer wieder nur bedanken für die riesige Arbeit die du in die Videos steckst.

    Eine kleine Frage hätte ich hier noch gerne angebracht: Du hast mal in einem Video ein "Logicbauteil" verwendet, welches ein Signal invertiert hat. Damit hast du einen Pin für ein Motorshield gespart. Leider kann ich dieses Video nicht mehr finden, aber kannst du mir ein Bauteil nennen, welches man dafür verwenden könnte. Also - viele Grüße in die Schweiz und mach weiter so - die Videos sind einfach top.

  • Hallo,

    ich finde es gut, auch im Hobbybereich auf eine gute Systematik beim Programmieren einzugehen. Auch lassen sich eigenständige Funktionen (Unterprogramme) in anderen Projekten einfacher weiter verwenden. Unendlich lange Hauptprogramme (main-loop) sind ein Graus und tragen in keiner Weise zum Verständnis des Programms bei.

    Zu allem gehört aber eine gute Dokumentation des Programms. Stichworte: Projektdokumentation - Programmdokumentation

    Auch im Hobbybereich sind (natürlich im kleineren Umfang) diese Dokumentationen sinnvoll und hilfreich.


    Bei vielen Programmdokumentationen sieht man immer wieder, das nur der Programmbefehl neu kommentiert wird.


    Vielleicht wäre es auch interessant auf Dokumentationswerkzeuge z.B. Doxygen einzugehen.


    Es gibt in dieser Richtung bestimmt noch viel zu sagen und zu zeigen ...


    Vielen Dank für Ihren Einsatz.

    Grüsse

    Harry

  • Hallo Andreas


    Der Schritt zwischen dem was ich gezeigt habe und einer professionellen Entwicklung ist noch sehr gross. Es sollte nur ein Anfang sein und die Leute nicht abschrecken. Du hast aber Recht, bezüglich Dokumentation wären einige Hinweise durchaus angebracht gewesen.


    Manchmal trifft man auf Programme, die mehrere hundert Zeilen in loop() aufweisen. Dafür ist nur eine einzige weitere Funktion (setup()) vorhanden. Mehr ist ja auch nicht notwendig, schliesslich hat man ja noch einige Bildschirmseiten globale Variablen.

    Das sind die Leute, die ich abholen möchte. Vielleicht treten dann zukünftig solche Horror-Szenarien etwas weniger auf.


    Übrigens werde ich in der kommenden 'Plauderei am Donnerstag' etwas über Klassen bringen. Nur ganz einfach und hoffentlich für jedermann verständlich. Das Thema wird natürlich nur gestreift und soll einfach die Leute neugierig machen. Ich bin gespannt, wie die Zuschauer darauf reagieren.


    Gruss

    René

  • Das ist eine gute Idee, die Programmiersystematik zu beleuchten. Bei paralleler Berabeitung verschiedener Projekte ist dieser Vorgang unverzichtbar und es ist gut, sich von Anfang an daran zu halten und einzuüben.

    Ich empfehle noch, die Testphasen auch von Anfang an zu planen: was soll erreicht werden und wo könnten Stolperfallen auftreten (hier zB auch die Funktionsfähigkeit der LED vorher zu testen).

    Dann fehlt mir noch der Hinweis auf die Dokumentation. Diese Phase wird leider meistens vernachlässigt und später kostet es viel mehr Aufwand, die Projektideen nachzuvollziehen. Auch für weitere Nutzer oder bei einem späteren Umbau des Projektes ist es vorteilhaft, auf die Dokumentation zurückgreifen zu können.

    Danke für das Engagement für einen guten Programmierstil.

    Andreas