Frage

Routinen, Prozeduren, Methoden - wie auch immer Sie Sie nennen, Sie sind wichtige Bausteine für uns Entwickler.Was einzigen Merkmals bewerten Sie als wichtigsten eine?

(Indem Sie jeweils ein Merkmal pro Antwort, es möglich ist, für Sie zu Stimmen einzeln.I. e.der Zweck dieser Frage ist nicht zu entscheiden, einzelne aus einem Merkmal, sondern markieren alle die wichtigsten.)

War es hilfreich?

Lösung

Ich denke, das wichtigste Kriterium wäre, dass es einen einzigen Zweck.

Nach, dass, dass es erfüllt diesen Zweck (und nur zu diesem Zweck) richtig.

Andere Tipps

Selbst Kommentieren Prozedur-Namen.

Beispiele:GetStoreFromAddress GetCarsByMake

Es sollte leicht sein Gerät getestet.

Die routine name Karten eins zu eins auf seine Funktionalität.

Es ist überraschend, wie oft eine Funktion X nicht X und auch Y -, oder die meisten von X, aber nicht alle von X.

Es ist keine einzige Kriterium, das zeichnet eine gute routine von einem schlechten.

Unter die Kriterien sind:

  • konzeptionelle Integrität:es tut etwas, das beschrieben werden kann, in einem einfache kurze form, ein Satz oder Absatz;
  • lose Kopplung:sein Verhalten ist nicht sensibel für das, was in code um ihn herum;
  • angemessene Größe:lange Routinen schwieriger zu Lesen und zu verstehen, und weniger gut konzeptionelle Integrität;
  • Parnas ist Kriterium:Sie "verstecken" eine Sache, die sich ändern können, so dass änderungen der Anforderungen beschränkt haben Wirkung auf den rest des Systems.

entwickelt, um leicht gelesen und verstanden durch Menschen - ohne, dass im Ort ist es viel schwieriger, es zu ändern, um all die anderen wunderbaren Eigenschaften, die werden hier aufgelistet

Anzahl der Dinge, die er versucht zu tun.

Wenn dies nicht genau 1 ist, dann haben Sie wahrscheinlich ein problem.

Es sollte nicht zu unerwarteten Nebenwirkungen.

gute Fehlerbehandlung (Zuverlässigkeit)

Kürze

(dies war eigentlich eine semi-lustige Antwort, aber SO nicht zulassen würde, dass sein posten dem einzigen Wort auf seine eigenen!)

Es hat atomaren

Zeilen code.

Sollten Sie verfolgen die Anzahl der Bearbeitungen erforderlich, nachdem die routine wurde in Gebrauch genommen."Eine gute routine ist, mit wenigen änderungen erforderlich.Eine 'schlechte' routine definitiv erweist sich also, wenn es eine Reihe von Korrekturen erforderlich.

Dies kann leicht erreicht werden mit einem Kommentar-header auf jeder Methodenaufruf wird aktualisiert nach jedem Bearbeiten.

Es tut eine Sache oder Delegierten mehrere Dinge auf andere Funktionen

Klarheit - Leicht zu verstehen

Ich denke, das ist leichter zu beantworten, wenn Sie denken, Routinen als Teil einer API.Es gibt nicht viele Routinen, die allein stehen, zumindest nicht in einer wirklich nützliches system.Also ehrlich gesagt, ich denke, die wichtigsten Dinge zu beachten beim schreiben von Routinen sind:

  1. Intuitivität Wie intuitiv ist meine Anleitung, werden die Leute verstehen den Zweck, die zimmerreserviereung, ohne das waten durch ein viel der Dokumentation?

  2. Orthogonalität Wie orthogonal sind meine Routinen?Nicht jeder erreichen eine bestimmte Aufgabe, oder sind es mehrere (aber etwas anders) Möglichkeiten, um das gleiche zu tun?Wenn es gibt, das ist schlecht, und die API muss wahrscheinlich überarbeitet werden.

  3. Kompaktheit Wie viel von der API wird es dauern, um einfache Aufgaben zu erledigen?Tun ich müssen, um zu lernen, eine Menge Zeug, um etwas zu erledigen, oder kann ich die ausreichen, mit nur ein paar Routinen, die etwas tun, intuitiv und leistungsstark?Sie müssen Wiegen die vor-und Nachteile dieser mit Orthogonalität, um ein guter Ausgleich für Ihre Besondere Domäne.

Von der name der routine, kann man sagen, was die routine hat (und wenn Sie mal den code, den Sie realisieren, dass Sie Recht hatten ;-)

Die routine verwendet eine konsistente Niveau der Abstraktion hindurch.

Ich würde sagen, gut dokumentiert ist (und tatsächlich auch durchgesetzt) pre-und post-Bedingungen.

Eine einzelne return-Punkt

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top