開発ガイド
実践的なスキルアップのためのリソース
開発環境セットアップ
エディタとIDE
VS Codeが依然として最も人気のあるエディタです。適切な拡張機能の選択と設定により、 生産性を大きく向上させることができます。
ESLint、Prettierによる自動フォーマット
GitLens でGit履歴の可視化
GitHub Copilotの活用
ワークスペース設定の共有
ターミナルとシェル
効率的なコマンドライン操作は開発者の必須スキルです。 モダンなシェルとツールを活用しましょう。
zsh + Oh My Zsh でカスタマイズ
fzf でファジー検索
ripgrep、fd でファイル検索高速化
tmux でセッション管理
Ts
TypeScriptベストプラクティス
型安全なコードベースの構築
TypeScriptの真価は、単なる型注釈ではなく、コンパイル時にバグを発見し、 リファクタリングを安全に行える点にあります。
// strictモードを有効に
"compilerOptions": {
"strict": true,
"noUncheckedIndexedAccess": true,
"noImplicitReturns": true
}型の設計原則
- ユニオン型を活用 - 状態の網羅的なハンドリングを強制
- ブランド型 - プリミティブ型に意味を持たせて誤用を防止
- ジェネリクス - 再利用可能で型安全なユーティリティを構築
- 型ガード - ランタイムチェックと型の絞り込みを連携
テスト戦略
効果的なテスト戦略は、プロジェクトの規模や性質によって異なります。 テストピラミッドの原則に従いつつ、投資対効果を意識したアプローチが重要です。
ユニットテスト
個々の関数やコンポーネントの動作を検証。 高速で信頼性が高く、CI/CDパイプラインの基盤となります。
Vitest / Jest統合テスト
複数のモジュールやサービスの連携を検証。 データベースや外部APIとの実際の通信をテスト。
Supertest / MSWE2Eテスト
ユーザーの操作フローを再現し、システム全体の動作を検証。 重要なユースケースに絞って実施。
Playwright / CypressGitワークフロー
コミットメッセージ
明確で一貫性のあるコミットメッセージは、プロジェクト履歴の可読性を高めます。 Conventional Commitsの採用を推奨します。
feat: 新機能fix: バグ修正docs: ドキュメントrefactor: リファクタリングtest: テストブランチ戦略
チームの規模とリリースサイクルに応じた戦略を選択します。 小規模チームではトランクベース開発がシンプルで効果的です。
- 短命なfeatureブランチ
- PRは小さく、レビューしやすく
- CIの全テストをパスしてからマージ
- リリースタグで履歴を追跡
パフォーマンス最適化
パフォーマンスは機能の一部です。ユーザー体験を損なわないために、 開発初期から意識的に取り組むことが重要です。
フロントエンド
- Core Web Vitalsの継続的モニタリング
- 画像の最適化とlazy loading
- コード分割とプリフェッチ
- 不要な再レンダリングの排除
バックエンド
- N+1クエリの検出と解消
- 適切なインデックス設計
- キャッシュ戦略の策定
- 非同期処理の活用