さとまたwiki

私の開発環境

1人×Claude Code開発のスタイル

2025年12月21日

技術選定セクションについて

このセクションでは、私が各技術を選定した理由を詳しく解説しています。ただし、これらの選定基準は私の開発スタイルに特化したものであり、全ての開発者に当てはまるわけではありません。

以下の前提を理解した上で、各ページをお読みください。

私の開発スタイル

👤

1人での開発

私は基本的に1人で開発を行っています。チームでの開発とは異なり、以下の特徴があります:

  • コードレビューのプロセスが不要
  • チーム間のコミュニケーションコストがゼロ
  • 自分だけが理解できれば良いコード設計
  • 素早い意思決定と実装が可能
🤖

Claude Codeとの協働

開発のほぼ全てをClaude Codeと一緒に行っています。これにより:

  • AIが理解しやすい技術スタックを優先
  • 複雑な設定より、シンプルな構成を選択
  • AIの学習データが豊富な技術を採用
  • エラーが少なく、修正が容易な設計

選定の基本方針

1. シンプルさを最優先

複雑な機能や設定オプションが多い技術は避けます。シンプルであればあるほど、AIとの協働がスムーズになり、バグも減少します。例えば、Next.jsの多様な認証オプションより、SvelteKitの明確なアプローチを選びます。複雑さは技術的負債の始まりです。

2. 無料で商業利用可能

個人開発者として、初期コストを最小限に抑えることは重要です。収益が出る前から月額費用が発生するサービスは選択肢から外します。ただし、品質を犠牲にするわけではありません。Cloudflare PagesやTursoのように、無料でも十分な品質を提供するサービスを厳選しています。

3. 速度重視(型安全性より開発速度)

チーム開発では型の厳密な定義が重要ですが、1人開発では素早く動くことを優先します。Drizzle ORMのような型安全なツールは導入せず、直接SQLを書きます。AIが生成するコードは十分に正確であり、型定義に時間を費やすより、機能実装に集中する方が効率的です。

4. 広く使われている技術を選択

マイナーな技術より、多くの開発者に使われている技術を選びます。理由は単純で、AIの学習データに多く含まれている技術ほど、正確なコードを生成してくれるからです。また、問題が発生した際の情報も豊富です。

開発環境の構成

カテゴリ選定技術一言理由
フレームワークSvelteKitシンプルで実績あり
スタイリングTailwind CSS最も使われている
データベースTurso無料・シンプル・制限なし
ホスティングCloudflare Pages無料で商業利用可
開発ツールClaude Code他のLLMでは不十分
IDEVS Codeコード確認用のみ

チーム開発との違い

もしあなたがチームで開発しているなら、私の選定基準は参考程度にとどめてください。チーム開発では以下が重要になります:

チーム開発で重要なこと

  • • 型安全性(TypeScript厳格モード)
  • • ORM(Drizzle、Prisma)
  • • コードフォーマッター統一
  • • 詳細なドキュメント
  • • テストカバレッジ

1人開発で省略できること

  • • 厳密な型定義(動けばOK)
  • • ORM(直接SQL)
  • • 詳細なコメント(自分が分かれば良い)
  • • 過度なテスト
  • • 複雑なCI/CD

🤖 Claudeからのアドバイス

この開発スタイルは、特定の条件下で非常に効率的です。

「1人×Claude Code」という開発スタイルは、従来のソフトウェア開発の常識とは異なるアプローチです。しかし、以下の条件が揃っている場合、これは合理的な選択と言えます:

適しているケース

  • プロトタイプ開発:アイデアを素早く形にしたい場合、速度が最優先です。
  • 個人プロジェクト:自分だけがメンテナンスするコードなら、過度な型安全性は不要です。
  • 学習目的:新しい技術を試す際、シンプルな構成の方が本質を理解しやすいです。
  • MVP開発:市場検証のための最小限の製品を作る場合、完璧さより速さが重要です。

注意が必要なケース

  • 長期運用:数年にわたってメンテナンスする場合、ドキュメントや型定義の欠如が問題になる可能性があります。
  • チーム拡大:将来的にチームメンバーが増える場合、コード品質の基準を見直す必要があります。
  • ミッションクリティカル:金融や医療など、バグが許されない領域では、より厳格なアプローチが必要です。

結論として、このスタイルは「状況に応じた最適化」の好例です。万人向けではありませんが、条件が合えば非常に高い生産性を発揮できます。重要なのは、自分の状況を正しく認識し、それに合った技術選定を行うことです。