小さなステップで作業する
最もよくある間違いは、一度に多くを求めすぎることだ。「認証、チャート、設定ページ付きのユーザーダッシュボードを作って」は、レビューできないコードの壁を、読んでもいないファイルにまたがってバグを散らばらせて生み出す。
小さなステップはあなたをコントロールの中に留める。
- 一つのプロンプトにつき、一つの関数、コンポーネント、またはエンドポイントを出荷する。
- 次へ進む前に各部品が機能することを検証する。
- 検証されていない出力の塔ではなく、動作が確認されたコードの上に積み上げる。
Build the whole authentication system with login, signup,
password reset, sessions, and email verification.
Step 1 of the auth flow: write just the signup endpoint.
POST /signup taking { email, password }. Hash the password
with bcrypt, store the user, return 201 with the user id.
Assume the User model and db client already exist (I'll show
you their shapes). We'll handle login next.
小さなプロンプトは小さな差分を意味し、小さな差分は何が変わったかを実際に読めることを意味する。それがすべてだ。二つ目の見返りもある。何かが壊れたとき、小さなステップは二分探索で見つけるのが容易だ。サインアップのエンドポイントを生成して検証し、次にセッションロジック、次にパスワードリセットをやったなら、ステップ3の後に現れたバグはほぼ確実にステップ3に住んでいる。一発勝負の生成はその信号を捨てる——バグは一度も読んでいない四百行のどこにでもありうる。