[Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

chka
Beiträge: 2484
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 302 Mal
Danksagung erhalten: 116 Mal

Re: Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von chka » 28.12.2020, 17:51

glaubt mir selbst in großen firmen hat jeder Programmierer einen andere Handschrift, wenn da nix kommentiert ist versteht es auch nicht jeder sofort. :roll:
RaspberryMatic - CuL 868mHz- CuxDemon - PioTek Tracker - Velux mit KLF200 und Somfy Anbindung- io.Broker auf Proxmox NUC6I3SYH i3-6100U RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

Matsch
Beiträge: 5455
Registriert: 30.05.2019, 11:37
System: Alternative CCU (auf Basis OCCU)
Wohnort: Chemnitz
Hat sich bedankt: 116 Mal
Danksagung erhalten: 743 Mal

Re: Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von Matsch » 28.12.2020, 18:00

chka hat geschrieben:
28.12.2020, 17:51
glaubt mir selbst in großen firmen hat jeder Programmierer einen andere Handschrift, wenn da nix kommentiert ist versteht es auch nicht jeder sofort. :roll:
Na, wenn die Firma nach ISO 9000 zertifiziert ist, MUSS ausführlich kommentiert und dokumentiert sein. Alles andere würde dagegen verstoßen.
Aber das ist OT.

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von jp112sdl » 28.12.2020, 20:39

Matsch hat geschrieben:
28.12.2020, 18:00
Na, wenn die Firma nach ISO 9000 zertifiziert ist, MUSS ausführlich kommentiert und dokumentiert sein. Alles andere würde dagegen verstoßen.
Kenne mich mit den ISOs nicht so aus... du meinst aber direkt die 9000, oder auch die 9001?
Mal aus den eQ-3 Pressemitteilungen zitiert:
...und den Zertifizierungen ISO 14001 und ISO 9001 für das Umwelt- und Qualitätsmanagement überzeugt
8) :mrgreen:

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

ayngush
Beiträge: 345
Registriert: 02.02.2012, 12:05
Danksagung erhalten: 7 Mal

Re: [Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von ayngush » 29.12.2020, 11:47

Es besteht ein Unterschied zwischen "Dokumentation" (gerne auch gemäß ISO 9001 wobei das eher Nebenschauplatz ist, interessanter ist da eher die ISO 27001) und der Kommentierung von Quelltexten.

Kommentare in Quellcode verstoßen meistens gegen das "Clean Code" Gebot, sind dadurch "anti pattern" und sollten vermieden werden.

Code: Alles auswählen

Comments rules:
   *  Always try to explain yourself in code.
   *  Don't be redundant.
   *  Don't add obvious noise.
   *  Don't use closing brace comments.
   *  Don't comment out code. Just remove.
   *  Use as explanation of intent.
   *  Use as clarification of code.
   *  Use as warning of consequences.
Und ja, "Clean Code" von Robert C. Martin ist das Standardwerk für Programmierung.

Wenn der Code also so komplex und undurchsichtig ist, dass man (Fachkraft) ihn auf dem ersten Blick nicht allein durch das anschauen des Codes versteht und es nur durch zusätzliche Kommentare im Quelltext möglich ist den Code nachzuvollziehen, dann ist der Code schlecht und sollte dringend überarbeitet anstatt durchkommentiert zu werden.

Und das in großen Firmen so viel undurchsichtiger Code-WirrWarr existiert ist eher dem "Legacy" und schlechter Organisation geschuldet.
Früher(tm) durfte quasi jeder Quellcode erzeugen, der mal ein halbes Semester Mathematik studiert und privat einen C64 hatte. Und das sind dann teilweise heutzutage die "Senior Software Developer" mit Projektverantwortung und und und... oder längst "verdaut und ausgeschieden".

Das macht sie aber nicht automatisch zu guten Entwicklern. Will damit sagen: Nur weil eine Firma groß ist, muss das nicht automatisch der Goldstandard für Quality of Code und Organisationsstrukturen sein. Eher im Gegenteil...

Edit: Und um das Rätsel aufzulösen, was dann Dokumentationen sind: Sämtliche Projektartefakte sind Dokumentationen, BPMN Diagramme, sämtliche UML-Diagramme, EPC/EPK, Handbücher, Whitepapers, Testprotokolle, Beschreibungen der Testszenarien, Schnittstellenbeschreibungen, fachliche Beschreibungen, Skizzen, Pläne, ... und noch ganz viel mehr...

Benutzeravatar
stan23
Beiträge: 2042
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 587 Mal
Danksagung erhalten: 338 Mal
Kontaktdaten:

Re: [Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von stan23 » 29.12.2020, 12:09

Nachdem der Thread ja eh schon komplett abgedriftet ist, und es hierzu genauso viele verschiedene Sichtweisen gibt, ein kurzer Kommentar dazu:
ayngush hat geschrieben:
29.12.2020, 11:47
Kommentare in Quellcode verstoßen meistens gegen das "Clean Code" Gebot, sind dadurch "anti pattern" und sollten vermieden werden.

Code: Alles auswählen

Comments rules:
   *  Always try to explain yourself in code.
   *  Don't be redundant.
   *  Don't add obvious noise.
   *  Don't use closing brace comments.
   *  Don't comment out code. Just remove.
   *  Use as explanation of intent.
   *  Use as clarification of code.
   *  Use as warning of consequences.
Wenn der Code also so komplex und undurchsichtig ist, dass man (Fachkraft) ihn auf dem ersten Blick nicht allein durch das anschauen des Codes versteht und es nur durch zusätzliche Kommentare im Quelltext möglich ist den Code nachzuvollziehen, dann ist der Code schlecht und sollte dringend überarbeitet anstatt durchkommentiert zu werden.
Widerspricht sich der Teil "keine Kommentare" nicht mit den letzten 3 Punkten?

Ich versuche mir gerade vorzustellen wie meine Ex-Kollegen und ich den Code hätten ändern können, so dass er ohne Kommentare auskommt. Oder ob es daran liegt dass wir keine Fachkräfte sind. Im Gegensatz zum Elektrikermeister ist das bei Programmierern schwieriger zu definieren, oder?
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

Benutzeravatar
funkleuchtturm
Beiträge: 2368
Registriert: 13.06.2011, 16:42
Hat sich bedankt: 23 Mal
Danksagung erhalten: 357 Mal
Kontaktdaten:

Re: [Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von funkleuchtturm » 29.12.2020, 12:31

stan23 hat geschrieben:
29.12.2020, 12:09
Nachdem der Thread ja eh schon komplett abgedriftet ist
... ihr könnt hier auch über's aktuelle Fernsehprogramm diskutieren! :mrgreen:
Der Thread hier ist sowieso nur noch eine Forumsleiche, nachdem ich meinen Leitartikel wegen der tollen Diskussionskultur gelöscht habe. :wink:
Viele Gruesse
Eugen
________________________________________________
SmartHome-Eintopf mit feinem Homeduino-Gemüse
... und für Feinschmecker gibt´s den WIFFI, den WEATHERMAN-2, den PULSECOUNTER und den AIRSNIFFER
mit vielen Kochrezepten für den ambitionierten Homematiker

Benutzeravatar
deimos
Beiträge: 5399
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 958 Mal
Kontaktdaten:

Re: [Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von deimos » 29.12.2020, 12:31

Hi,

der Gedanke bei Clean Code geht in Richtung kaum Kommentare und nicht dahin, Kommentare komplett zu verbannen.

Was auf jeden Fall verhindert werden sollte, ist ein Code in der Richung

Code: Alles auswählen

if (Bedingung) {
  // checks if Bedingung is true and do something
  DoSomething();
}
Genauso schwierig sind Kommentare, was eine (private) Funktion machen soll. Hier sollte man versuchen, die Methodensignatur so zu wählen, dass sie selbstsprechend ist. Ansonsten hat man leider ganz schnell das Problem, dass irgendjemand vergisst, den Kommentar zu ändern, wenn sich die Methode ändert.

Ganz allgemein ist es so, dass man in weit über 90% der Fälle unsauberen Code hat, wenn man einen Kommentar dran schreiben muss, damit es verständlich wird. Die absoluten Verfechter von Clean Code sehen aber leider nicht ein, dass man hin und wieder mal eine unsauberen Hack braucht. Die Kunst ist es, die Weitsicht zu haben, zu erkennen, wann das wirklich notwendig ist und wann es einem später auf die Füsse fallen wird.

Viele Grüße
Alex

MichaelN
Beiträge: 9689
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 700 Mal
Danksagung erhalten: 1628 Mal

Re: [Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von MichaelN » 29.12.2020, 13:38

funkleuchtturm hat geschrieben:
29.12.2020, 12:31
nachdem ich meinen Leitartikel wegen der tollen Diskussionskultur gelöscht habe. :wink:
Das wiederum ist auch kein Zeichen einer tollen Diskussionskultur. Aber deine Entscheidung.
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Benutzeravatar
Black
Beiträge: 5485
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: [Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von Black » 29.12.2020, 13:56

Ich denke auch,wenn ich diesen Thread durchblätter, dass sich HIER doch die sachlich argumentativen Texte in der grossen Mehrheit befanden, während sich in dem , ich sag mal "provokativem KonkurrenzThread" dann dort auch die passenden Sätze fanden.

Aber dein Threadthema, deine Entscheidung.

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

ayngush
Beiträge: 345
Registriert: 02.02.2012, 12:05
Danksagung erhalten: 7 Mal

Re: [Gelöscht] Guter Rat: Skripte verwenden nur im Ausnahmefall!!!

Beitrag von ayngush » 31.12.2020, 01:07

stan23 hat geschrieben:
29.12.2020, 12:09
Widerspricht sich der Teil "keine Kommentare" nicht mit den letzten 3 Punkten?
Das ist ja nicht absolut und Binär und alle anderen sind Ungläubige.
Die Auflistung ist ja eine Zusammenfassung dessen, was im Kontext "Clean Code" beim Erzeugen von Quellcode und Kommentieren von Quellcode möglichst berücksichtigt werden sollte, da dadurch der Code besser wird.
Niemand wird gekündigt, wenn man mal etwas kommentieren muss. Im Hinterkopf sollte man beim Programmieren halt behalten, dass man seinen Code für sich sprechen lassen können sollte. Kurz, Übersichtlich, nicht zu tief verschachtelt, möglichst ohne Wiederholungen, mit ordentlichen Benennungen von Variablen, Attributen, Klassen, Methoden, Funktionen, sich an die "Code Style" Richtlinien halten die sich etabliert haben, usw.
Halt das, was schon seit Ewigkeiten "rauf und runter" gebetet wird, was teilweise so schöne Namen wie "DRY" (Don't Repeat Yourself) und "KISS" (Keep It Small & Simple) trägt. Wenn man sich daran hält, dann braucht man auch nur ganz wenige Kommentare und die, die man dann erzeugt (weil sie sinnvoll sind) werden heutzutage ja meistens im "Javadoc / Docblock" Format zusammen gefasst.

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“