Frage

Wir haben ein CMS auf Java gebaut und es hat Mozilla Rhino für die Server-Seite JS. Im Moment ist die JS Code-Basis klein, aber wächst. Bevor es zu spät ist und Code ein schreckliches Chaos geworden ist möchte ich einige bewährte Methoden und Codierung Stil einzuführen.

Offensichtlich ist der Namensraum Steuerung ist ziemlich wichtig. Aber wie andere Best Practices - vor allem für Java-Programmierer?

War es hilfreich?

Lösung

Hier einige Tipps von den Frontlinien:

  • Wie Java verwendet Docblocks in Doxygen / JsDoc Stil für Funktionen
  • Unit-Test. Persönlich wie JsTestDriver, wie es auch automatisch von CI ausgeführt Server werden kann.
  • Verwenden Sie JSLint. Es wird nitpick über schlechten Code
  • Betrachten Sie die Verwendung von Google Closure Compiler. Es wird über Code wie JSLint nitpick, aber es kann für das Auffinden schlechte doc Blöcke usw. hilfreich sein.
  • Stellen Sie sicher, dass jeder in Ihrem Team versteht, wie Verschlüsse funktionieren. Sonst wird es zu Kopfschmerzen führen
  • Wie Sie erwähnen, Namensräume sind wichtig vor allem, wenn Sie Ihren Code wollen mit anderen JS Bibliotheken schön arbeiten (var myns = myns || {};)
  • persönlich eine Bibliothek finde ich verwendet, die wie Klassen OOP Helfer bietet usw. hilfreich. Sie könnten prototypal Vererbung, aber es ist oft ein bisschen schwieriger diese Weise.

Andere Tipps

Ich würde Blick auf Commonjs (früher ServerJS). Es ist sehr viel ein work in progress, aber sie haben ein standardisiertes Modulsystem mit mehreren Implementierungen. Es gibt bereits einige nützliche Bibliotheken auf die Commonjs spec geschrieben, wie Narwhal .

Wie Douglas Crockford sagen mag, JavaScript ist die weltweit am meisten mißverstanden Programmiersprache. Obwohl viele Menschen nicht wissen, gibt es einen rechts Weg in JavaScript zu codieren. Ich habe keinen Zweifel, dass, wenn Sie Java-Entwickler Codierung starten lassen, bevor das Verständnis, wie gut JavaScript schreiben Sie in ernsthafte Schwierigkeiten geraten werden.

Das erste, was sicher, jeden zu machen wäre zu tun hat Mozillas ausgezeichnete Artikel, Eine erneute Einführung in JavaScript lesen ( https://developer.mozilla.org/en/a_re-introduction_to_javascript ). Eines der größten Probleme mit JavaScript ist, dass es viele Möglichkeiten, am häufigsten ausgeführten Aufgaben zu tun, und diese Artikel sollen die Menschen auf der gleichen Seite bekommen. Eine weitere wesentliche Referenz Douglas Crockford Arbeit, einschließlich JavaScript. The Good Parts

Eine andere Sache, die eine Menge von Java / C ++ Programmierer bekommt, ist, dass JavaScript verwendet Funktion Umfang NICHT Umfang blockieren. Dies kann einige sehr heikle Probleme verursachen. Es gibt einen großen Artikel über dieses Thema auf A List Apart Binding in JavaScript genannt.


Zu den wichtigen Fragen zusammenfassen in den oben genannten Ressourcen sprachen über die wichtigsten Unterschiede sind zu lernen

  • , wie objektorientierten Code prototypal Vererbung schreiben (vs.class basierte Vererbung)
  • , wie Sie mit Schließungen und Lambda-Ausdrücke
  • , wie die Leistung von dynamischen Objekten verwenden,
  • , wie funktions scoped Code
  • schreiben

Da Sie eine JS-Engine in Java haben, macht es sich zur Gewohnheit Unit-Tests für Ihren JS-Code zu schreiben. Wählen Sie eine Codierungsstil und wenden sie energisch. Wenn möglich, Werkzeuge verwenden zu überprüfen, ob der Code des Codierungsstil einreicht.

Im Folgenden sind einige Links, die Ihnen helfen können:

Javascript Best Practices

JavaScript Best Practices pdf-Datei

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