Coding Style Guide für node.js-Apps? [closed]

Lesezeit: 5 Minuten

Gibt es einen (oder mehrere) Coding Style Guide für node.js? Wenn nicht, was sind die aufstrebende Stile von den besten Open-Source-Node-Projekten verwendet?

Ich suche einen Guide (oder mehrere Guides) in der Art von PEP 8, der kanonische Coding Style Guide für Python. Ich habe verschiedene JavaScript-Anleitungen gesehen, die es nicht wert sind, hier verlinkt zu werden (meistens alt und auf clientseitiges JavaScript ausgerichtet). Ich habe eine interessante node.js gefunden Gestaltungsrichtlinie.

Ein Kodierungs-Styleguide oder Kodierungskonventionen sollten beinhalten (sind aber nicht beschränkt auf):

  • Code-Layout: Einrückung (2 Leerzeichen, 4 Leerzeichen, Tabulatoren, …), Zeilenumbrüche, Zeilenumbrüche usw.
  • Leerzeichen, z. B. „Funktion (arg)“ vs. „Funktion (arg)“
  • Semikolon oder kein Semikolon, var-Deklaration, …
  • Benennung, zB do_this() vs. doThis(), var_name vs. varName, …
  • node.js und JavaScript-Idiome, z. B. == vs. ===, das erste Argument des Callbacks ist ein Fehlerobjekt, …
  • Kommentare und Dokumentation
  • Begleitende Tools, wie Lint Checker, Unit Test Framework, …

Dieses Thema ist natürlich sehr subjektiv, aber ich denke, es ist ein wichtiger Schritt einer Community, einen gemeinsamen und weithin akzeptierten Programmierstil im Prozess der Reife zu etablieren. Außerdem geht es nicht nur um den Geschmack. Insbesondere Regeln wie „benutze === statt ==“ haben einen direkten Einfluss auf die Codequalität.

  • Ich denke, es hängt wirklich von dem “Framework” ab, das Sie verwenden (falls vorhanden), zum Beispiel könnten Sie es überprüfen spludo.com/source/coding-standards andere könnten jedoch etwas andere Ansätze in Betracht ziehen

    – Poelinka Dorin

    31. März 2011 um 6:48 Uhr

  • „Hat jemand gute Styleguides“ mag subjektiv sein oder auch nicht, aber „Welche neuen Styles gibt es?“ ist es sicherlich. Sie haben bereits den Leitfaden von Felix gefunden, dem ich natürlich in einigen Aspekten (in einigen Fällen stark) widerspreche und in anderen Aspekten zustimme. Und das ist das Problem. Sehr, sehr schnell geht es um „Nein, der Stil Ich bin Emergen zu sehen benutzt Tabulatoren!“ „Nein, der Stil Ich bin Auftauchen zu sehen verwendet vier Leerzeichen!“ „Nein, der Stil Ich bin sehen entstehen verwendet zwei Leerzeichen!” Wenn die Leute natürlich wirklich meinen “den Stil, den ich bevorzuge”, nicht “den Stil, den ich sehe.”

    – TJ Crowder

    31. März 2011 um 7:02 Uhr


  • @TJ Croweder Der Stil Ich bin Seeing Emerging verwendet keine Leerzeichen!

    – Raynos

    31. März 2011 um 23:00 Uhr

  • +1 Tolle Frage. Ich wünschte, ich hätte diese Links schon vor Ewigkeiten gehabt.

    – Bryan Downing

    1. April 2011 um 4:08 Uhr

  • Subjektive Frage.

    – Niels Abildgaard

    16. Februar 2015 um 19:37 Uhr

Benutzer-Avatar
Chris

Ich würde die Codierungsstandards überprüfen, die von überprüft wurden JSLint oder schauen Sie sich den Autor von an NPM (Isaac Shlüters) Kodierungsstandards.

Sie können sich auch den Stil ansehen, der von namhaften Node.JS-Programmierern verwendet wird:

Krank werfe meine zur Sicherheit drin 😉

Bearbeiten: Vorschläge von @alienhard

IMO gibt es ein paar goldene Regeln, die Sie befolgen sollten:

  • Benutze niemals with oder eval
  • Verwenden === Über ==
  • Deklarieren Sie Ihre Variablen immer mit var im entsprechenden Bereich – greifen Sie nicht auf den globalen Bereich zurück
  • Wickeln Sie Ihre App in einen Verschluss (function(){})() wenn Sie vorhaben, Code zu veröffentlichen, der sowohl serverseitig als auch im Browser ausgeführt wird
  • Rückrufe sollten dauern err als erstes Argument und wenn sie selbst einen Rückruf als Argument nehmen, sollte es das letzte sein, z callback(err, param1, param2, callback)

Einrückungen, Abstände zwischen geschweiften Klammern und Schlüsselwörtern sowie die Platzierung von Semikolons sind alle eine Frage der Präferenz.

  • Danke für die Antwort. Ich habe mich gefragt, warum du Ryan nicht erwähnt hast ;). Aber ich habe aus dem offiziellen Node-Repo-Wiki herausgefunden, dass sie folgen JavaScript-Styleguide von Google. Das kannte ich noch nicht…

    – Alienhart

    31. März 2011 um 20:18 Uhr

Es gibt einen neuen Standard in der Stadt.

Verwenden Standardstil.

js-Standard-Stil

  • Ich habe keine Ahnung, warum dies nur 3 Upvotes hat …

    – Luc

    8. August 2016 um 0:30 Uhr

  • @Luc vielleicht wegen der Regel “Keine Semikolons”. Scheint eine seltsame Wahl für etwas zu sein, das als “Standard” -Stil bezeichnet wird.

    – Daniel Yankowsky

    2. Dezember 2016 um 15:31 Uhr

  • Kein Semikolon ist keine gute Idee. Es wird eine gewisse Minimierung brechen.

    – denov

    6. April 2017 um 22:12 Uhr

  • Dies standard Paket mag keine Semikolons. Wenn Sie Semikolons mögen, gibt es Halbstandard

    – janik

    12. Juli 2019 um 13:08 Uhr

Sie können viele bewährte Verfahren für Codierungsstile aus clientseitig orientierten JavaScript-Leitfäden lernen (die meisten davon gelten auch für node.js im Allgemeinen, da der Unterschied zwischen Client- und Serverseite hauptsächlich in Bibliotheken und nicht in der Sprache selbst liegt). Zum Beispiel JavaScript-Muster Buch widmet diesem Thema einige Teile des Kapitel 2. Auch Douglas Crockfords Webseite, Buchen und Videos Materialien, die man gesehen haben muss, um JavaScript-spezifische Codierungsstile und Best Practices zu übernehmen, würde ich sagen.

  • +1 zu Douglas Crockfords Buch “JavaScript: The Good Parts”. Es enthält verdammt viele Informationen in einem prägnanten / kleinen Buch – eine schwere Lektüre, aber eines der besten Bücher, die ich gelesen habe.

    – Alex Schlüsselschmied

    31. März 2011 um 9:12 Uhr

Wenn Sie node vom Terminal aus verwenden, ist es für Ihren Quellcode nützlich, Leerzeichen für Einrückungen zu verwenden. Andernfalls wird das Caret “Fehler hier” nicht angezeigt.

Mit Registerkarten:

        var preps = files.map(function(f) { 
            ^
TypeError: Cannot call method 'map' of null

Mit Leerzeichen:

        var preps = files.map(function(f) { 
                          ^
TypeError: Cannot call method 'map' of null

Dies könnte ein reines Mac-Problem sein, aber ich würde es nicht vermuten.

Es ist schon eine Weile her, seit ich diese Frage gestellt habe … und in der Zwischenzeit habe ich diese ausgezeichnete JavaScript-Anleitung gefunden:

Prinzipien des Schreibens von konsistentem, idiomatischem JavaScript

https://github.com/rwldrn/idiomatic.js/

Benutzer-Avatar
Dror

Airbnb hat einen recht guten Javascript-Styleguide
https://github.com/airbnb/javascript

Für Coffee-Script, wo schlechte Einzüge Kompilierungsfehler bedeuten

verwenden

:set tabstop=2
:set shiftwidth=2
:set expandtab

beliebte Kaffeeprojekte, zombie, brunch verwendet dieses Setup für Einrückungen.

Bearbeiten:

Verwenden Sie eigentlich nur das! https://github.com/paulmillr/code-style-guides (einer der Hauptverantwortlichen für brunch)

1258060cookie-checkCoding Style Guide für node.js-Apps? [closed]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy