Aus RN-Wissen.de
Version vom 21. Dezember 2010, 22:11 Uhr von Ofenrohr (Diskussion | Beiträge) (Sortierung)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche
Balkonkraftwerk Speicher und Wechselrichter Tests und Tutorials

Sortierung

Hallo,

wieso wird die von mir geschriebene, neue Seite SNES Controller nicht unter 'S' sondern unter '!' angezeigt?

Und ist die Kategorie Quellcode C nicht eigentlich eine Art Code-Pool? Auf AVRs braucht es meistens etwas mehr Erklärungen zum Code, wodurch sich die Form Seite = Erklärung + Schaltplan + C Code + Beispiel anbietet und hier auch in Artikeln verwendet wird.

--Ofenrohr 22:05, 21. Dez 2010 (CET)

Code-Pool

Mehrfach wurde angeregt einen Code-Pool für avr-gcc C zu schaffen.

Da der Artikel zu avr-gcc nicht der geeignete Ort dafür ist, bietet sich -- wenn überhaupt -- ein eigener Artikel an.

Nun ist ein Code-Pool kein normaler Artikel, und bevor man damit anfängt, sollte diskutiert werden, wie weit sowas überhaupt sinnvoll ist und wenn ja, in welcher Form.

Einfach nur ein copy && paste des Codes in den Artikel bringt keinem was.

Zu bedenken gebe ich mal

  • welche Code-Convention sollten eingehalten werden?
    • ANSI-C?
    • Dokumentierung
    • Kommentierung
    • Indentation
    • Naming Conventions für Makros, typedefs, Funktionen, etc
  • Was ist das für Code?
    • Funktionsbeschreibung / Interfaces / Prototypen / Synopsis / Spezifikation...
    • ein komplettes Modul
    • eine Funktion
    • nur ein Schnippsel
    • pseudo-Code
    • dient das als Vorlage oder soll es 'out of the box' funktionieren?
  • Wie weit reicht der Code?
    • Stärken, Schwächen
    • Unzulänglichkeiten und bekannte Fehler
  • Ist der Code getestet?
    • Für welche Controller?
    • Ist das halbwegs portierbar?
    • Welche Änderungen wären dazu vorzunehmen?
    • inwieweit ist das ganze maschinen(un)abhängig?
  • Kosten und Gewinn
    • Was wird verbraucht?
      • flash
      • SRAM
      • EEPROM
      • Laufzeit
      • Hardware (Timer, I/O, Interrupt-Vektoren)
    • warum steht der Code im Artikel?
    • warum könn(t)en andere davon profitieren?
  • Wie könnten Versionierung / bugfixes / Erweiterungen /Diskussionen aussehen
  • Welche Nebeneffekte treten auf?
    • müssen IRQs aktiv sein?
    • was ändert sich, wenn ISRs (nicht mehr) kaskadieren dürfen/müssen?
    • globale Variablen?
  • Ist der Code geeignet für eine Bibliothek?
    • Was muss zur Compilezeit bekannt sein? Wann muss er neu generiert werden?
    • was ist zu ändern, um den Code in eine Bibliothek aufnehmen zu können?
  • Wie wird der Code einsortiert?
    • Nach Funktion (schwierig, da oft mehrere Dinge erledigt werden)
    • nach Qualität
    • komplettes, sauber implementiertes portierbares Modul oder nur Schnippsel?
  • Wie wird Überschaubarkeit gewahrt?


--SprinterSB 17:14, 2. Dez 2005 (CET)

Nicht gleich so komplexe Anforderungen?

Ich würde nicht gleich so komplexe Maßstäbe an die Beispiele anlegen. Du musst bedenken das das Wiki auch Einsteigergerecht sein soll, mit zuvielen Richtlinien verschreckt man die Mitwirkkenden. Zudem programmieren im ROboternetz nur relativ wenige wirklich in C. Ich denke man sollte Step bei Step vorgehen. Starte doch erst mal mit einem kleinen Beispiel so wie du es Dir denkt. Man kann immer noch editieren und umstellen wenn sich das Form als ungünstig erwiesen hat. Wichtig ist es das es auch dem C-Einsteiger nützt und das es schnell verständlich ist.

--Frank 11:25, 3. Dez 2005 (CET)

Das wart eher als Brainstorm zu verstehen, nicht als Maximalforderung.

Daß der Code verstanden und richtig eingesetzt wierden kann, setzt IMHO ein gewissen Mindestmaß an Beschreibung/Qualität voraus.

--SprinterSB 14:04, 3. Dez 2005 (CET)

Feedback

Vielleicht gebt ihr hier Rückmeldungen, ob ihr überhaupt was mit dem Code anfangen könnt. z.B.

  • Das ist der absolute Code, danke!
  • Das Zeug ist unbrauchbar und Schrott
  • Naja, netter Versuch, aber was soll der Schotter?
  • Ist zu kompliziert und zu schwer zu verstehen, damit kann ich nix anfangen
  • Was sollte hier für Code stehen?

--SprinterSB


LiFePO4 Speicher Test