Wir sind gezwungen, spartanische Programmierung für ein Projekt zu verwenden, zu jedermanns Bestürzung. Ich verstehe, es macht die Methoden sehr kurz und behandelt zuerst die einfachen Fälle. Aber ist es wirklich den Preis wert, dass der Code wie etwas aus dem Obfuscated C Code-Wettbewerb aussieht?
Kannst du sehen, dass es für etwas nützlich ist?
programming-practices
methodology
EpsilonVector
quelle
quelle
Antworten:
Viele der Mieter der spartanischen Programmierung scheinen mir nur eine gute Praxis zu sein. Beispiel: Halten Sie Methoden kurz, minimieren Sie den Umfang der Variablen, minimieren Sie die Anzahl der Parameter für eine Methode oder Methoden für eine Klasse usw. Dies sind alles gute Dinge und genau das, wonach Sie streben sollten.
Aber dann gibt es Dinge wie das Minimieren der Zeichenanzahl , das Minimieren der Tokenanzahl , die Ternarisierung (ernsthaft?) Usw. , die wirklich keinen Sinn ergeben.
Ich denke, mein Hauptproblem dabei wird durch dieses Zitat veranschaulicht :
Alles, was "bis zum Äußersten" geht, läutet Alarmglocken für mich.
quelle
Das kam mir beunruhigend bekannt vor. Sogar die Minimierung der Token, obwohl nicht bis zum Äußersten. Ich verwende lieber fname als filename, zum Beispiel out für die Ausgabe, x für die Dateneingabe, n für die Anzahl, l für die Länge und so weiter. lx wäre die Länge von x, ly die Länge von y, ... Sie erhalten die Drift.
Da ich in wissenschaftlichen Anwendungen häufig große Datenmengen manipuliere, verwende ich die Indexfunktionen in R häufig. Wenn ich all diese Indizes schreibe, schmerzt der Code meine Augen. So wird Index zu ID oder auch nur zu i.
Darüber hinaus erfordern die spezifischen Schleifenstrukturen in R (der Apply-Familie) häufig eine Funktionsdeklaration innerhalb des Apply-Aufrufs. In diesen Fällen verwende ich immer x, y, z, ... Diese Funktionen bestehen oft aus ein oder zwei Zeilen, sodass klar ist, woher sie kommen, und der Bildschirm nicht überladen wird.
Es ist keine schlechte Sache, solange Sie einige Namenskonventionen haben, die im gesamten Code kohärent sind, und Sie Kommentare abgeben, um die dunkeleren Variablennamen zu erklären. Am Ende macht es Code für mich besser lesbar als ein langer Zug von Kamelen, die über den Bildschirm humpeln.
quelle
Hier ist ein Artikel, der die Vorteile der spartanischen Programmierung beschreibt
http://ssdl-wiki.cs.technion.ac.il/wiki/index.php/SendAnEmail_case_study
quelle
Dies ist eine Akzentuierung Kompaktheit des Cs.
Niemand kümmert sich um Ihren Code, wenn er nicht korrekt ist.
Wenn Ihr Code nicht vollständig ist (behandelt jeden Fall), gibt es Fehler.
Wenn es nicht kompakt ist, verschwenden Sie Speicher oder Taktzyklen (abgesehen von Compiler-Optimierungen).
Beachten Sie, dass die Reihenfolge hier von größter Bedeutung ist. Das kompakteste Programm ist selten korrekt. Z.B
quelle
void main(){return 1;}
Wow, ich programmiere tatsächlich so, wusste nicht, dass es einen Namen hat. Ich würde sagen, es kommt der Lesbarkeit zugute, aber eher räumlich ... was bedeutet, dass Sie sich nicht in einer Code-Suppe verlieren, selbst wenn Sie nur wenige Zeilen haben, die schwer zu lesen sind.
Ich würde jedoch sagen, wenn Sie sich an bestimmte Konstrukte gewöhnen, finden Sie den Weg in kürzerer Zeit leichter als zu Beginn.
quelle