efcl’s blog

GitHub英語のメモや引用が中心です。

9 anti-patterns for node.js teams

9 anti-patterns for node.js teams

9 anti-patterns for node.js teamsでは node.jsにおける9つのアンチパターンを紹介しています。

Baggage from your previous technology

過去の技術は置いてnodeに向きあおう。

Monolithic applications

モノリシックなアプリにするな。 一つの共有モジュールではなく、それぞれのモジュールで構成しよう。

Googling "How to do x in JavaScript"

"JavaScript"でどうやるのかについてググるな。 検索結果はjQueryが多く含まれるので、まずはES5を理解しよう。

Handling error

文字列じゃなくてエラーオブジェクトを使おう。 Programmer errorsに対してはthrowしよう

エラーを無視しないようにしよう

Wrapping everything in promises

何でもPromiseにするな。 モジュールはコールバックを提供しよう。 PromisesはCPUを使うので節約しよう。

コールバックを使おう。

Git URLs in your package.json

依存関係に直接gitのURLを使わない。 semverに対応できないし、キャッシュの挙動が変な時があったりする。

npm に公開しよう

Sloppy async code

コントロールフローのパターンを利用して、 狂ったウォーターフローを作ったりしないようにしよう。

Promiseやasync等の非同期処理のパターンを使おう

Having node do everything

SSLの末端はnginx等に任せた方がいい。 nodeには重たい暗号化処理等は向いてない。

その仕事にあったツールを使って何でもnodeでやろうとしない。

Ignoring the node ecosystem

npmは沢山のコード資産を持ってる、そのエコシステムは無視しない。 Node Security ような情報に目を向けよう。

コミュニティに向きあおう。