こちらの記事がとても分かりやすかったのでシェアします。
NestJSのAPI開発の具体的な手順としては、次のようになるらしいです。
- モジュールでコントローラーとプロバイダーを束ねる
- Entityを定義(DBの定義)
- DBのマイグレーション
- バリデーションの定義
- コントローラーの作成
- プロバイダー(サービス)の作成
- Postmanで動作確認
この「サービスの作成」というのは、Railsでいうところの「モデルの作成」に近いと思われます。
NestJSの場合には、Controller
は薄くて、具体的な処理はProviders
の中のService
におこなわせる、というイメージです。
そのため、RailsであればController
で行う複雑な処理(ビジネスロジック)も、基本的にProviders
のService
にやらせるのかな~という気がしました。
Railsの場合はモデルが厚いと「ファットモデル」と呼ばれたりしますが、NestJSの場合はそういうわけでは無さそうです。
(共通部分はimports
, exports
でDRYにするのかも)
詳細については、以下の記事も参考になりそうです。