IT-Q

next build と next dev は、何が違いますか。

dev は変更が即座に反映されるよう都度コンパイルし、エラーも詳しく出します。build は配布用の成果物を作り、不要なコードを削り、静的生成できるページを先に作ります。

面接官が見ているのは基本の補強。

これは「Vercel 以外の環境にデプロイしたことはありますか。何が必要でしたか。」への追撃質問です。

よくある答えと、面談でどう見られるか

  • dev は毎回コンパイルする開発用。build は最適化した配布用の成果物を作る
    だからデプロイ前に一度ローカルで build を通しておきます。
  • 速度が違うだけで、動作は同じ
    動作も違います。静的生成の失敗や環境変数の埋め込みは build しないと分かりません。
  • build しないと分からない問題があるので、デプロイ前にローカルで通しておく
    実務的な結論として正しいです。
  • dev は開発用なので、本番では build したものを使う
    正しいのですが、設問は違いの中身です。「何が違うから本番では build を使うのか」まで言えると通ります。

面接官は何を見ているか

  • dev は毎回コンパイルすると理解している
  • build は最適化された成果物を作ると言えた
  • 挙動が違う点に触れた

模範解答

next dev は開発用で、ファイルを変更したら即座に反映されるように、必要なものをその都度コンパイルします。エラーメッセージも詳しく出ます。

next build は配布用の成果物を作ります。不要なコードを削り、圧縮し、静的に作れるページはこの時点で HTML にします。

違いで注意すべきは、開発時には出ない問題があることです。静的生成の失敗、本番用の最適化に起因する不具合、環境変数の埋め込みなどは、build しないと分かりません。だから、デプロイ前にローカルで一度 build を通しておくのが基本です。