Open27

Node.js の勉強の仕方

ino_hino_h

深掘りしてみたいこと。

  • 開発環境
  • エコシステム
    • Web フレームワーク
    • データベース(RDS、KVS、キャッシュ等)
  • テストコードの書き方
ino_hino_h

Node のアプリケーションサーバ
選択肢としては下記が候補に見える

黄色:express
青:Fastify
赤:Koa

トレンドを見ると Fastify がよさそう。

ino_hino_h

Fastify は serverless にも対応しているのでコードの統一という意味でよさそうに見える。
https://fastify.dev/docs/v3.29.x/Guides/Serverless/

ino_hino_h

Fastify ではデフォルトで Tap というテストライブラリを使用していそう。
モダンなものを制定する必要があるが、場合によって Jest に差し替えた方がいいかも。

ino_hino_h

[Fastify]
OpenAPI -> router にするライブラリ
https://github.com/seriousme/fastify-openapi-glue
router -> OpenAPI にするライブラリ
https://github.com/SkeLLLa/fastify-oas

ino_hino_h

Node で import を使おうと思うと package.json に "type": "module", を指定する必要がありそう。
ただ入れると大量にエラーが出そうだったので、まだ試していない。

ino_hino_h

ORM