Als derjenige, der dieses Tool implementiert , startHttpServer
sollten Sie versuchen, es so einfach, reibungslos und nahtlos wie möglich zu gestalten ...
Die Logik der Funktion
Technisch gesehen , durch die Spaltung von startHttpServer
‚s - Logik in 2 Funktionen und nannte sie separat , alle , was Sie tun , ist bewegend startHttpServer
‘ s Idempotenz in den Code stattdessen beide Funktionen aufrufen ... Außerdem , wenn Sie sowohl die Logik in eine dritte Funktion wickeln (was tut startHttpServer
Dies zwingt Sie dazu, nicht getrockneten Code zu schreiben und ihn exponentiell überall dort zu duplizieren, wo Sie ihn aufrufen müssten startHttpServer
. Kurz gesagt, startHttpServer
muss sich die isHttpServerRunning
Funktion nennen.
Mein Punkt ist also:
isHttpServerRunning
Funktion implementieren , da diese möglicherweise ohnehin eigenständig benötigt wird ...
- Implementiere
startHttpServer
es isHttpServerRunning
, um seine nächste Aktion entsprechend zu definieren ...
Sie können startHttpServer
jedoch jeden Wert zurückgeben, den der Benutzer dieser Funktion benötigt, z. B .:
0
=> Fehler beim Starten des Servers
1
=> Server startet erfolgreich
2
=> Server wurde bereits gestartet
Die Benennung der Funktion
Was ist zuallererst das Hauptziel des Benutzers? So starten Sie den HTTP-Server , richtig?
Grundsätzlich ist es kein Problem, etwas zu starten, das bereits gestartet wurde, AKA 1*1=1
. Zumindest für mich ensureHttpServerIsRunning
scheint " " die Bezeichnung " " nicht kritisch erforderlich zu sein. Es interessiert mich mehr, wie lang, natürlich und einprägsam der Name der Funktion ist.
Wenn Sie nun wissen möchten, wie die Funktion unter der Haube im Detail funktioniert, gibt es die Dokumentation oder die Codequelle dafür. Ich meine, wie für jede andere Funktion aus Bibliothek / Framework / API / etc ...
Sie lernen die Funktion einmal, während Sie sie mehrmals schreiben ...
Ich würde mich auf jeden Fall daran halten, startHttpServer
was kürzer, einfacher und eindeutiger ist als ensureHttpServerIsRunning
.