はじめに
表題の通り、開発業務での私のAIの活用事例について備忘録も兼ねてご紹介です。
目次
🧷 開発で時間をとられる場面
理解・把握
- 機能仕様の理解・把握
関連する情報源が多くあるほど集計から含めると時間がかかる - 新機能のコーディング・既存機能のコード修正
既存機能に関しては、開発担当外のものほど開発者の意図の把握を含め時間がかかる - 実装修正箇所・影響範囲の把握
調査
- 問題原因の特定
特に外部ライブラリで出るエラー等は解決に時間がかかる - 解消法・対策の導出
コーディング
- 初めて実装する機能での対応方法の調査
- 既存コードの修正における元々の開発担当者の意図等も絡んだ現状把握
🧷 活用シーン
🪄 ドキュメントのスキャニング
API開発等で仕様書のURLやその他ドキュメント・Githubリポジトリをプロンプト共有し、内容の要約・要点の把握に活用し、特に初見機能の仕様理解にかかる時間を短縮。
※ 使用感として、複数ページへネスト化されたものや参照権限がないと見られないドキュメントについては、内容の読み取りは難しい模様。。
🪄 ベース実装
新規・既存の実装いずれにおいてもMVCモデルやクリーンアーキテクチャ等、内部構成が同じであれば、参考となるソースコードをプロンプト共有することで、ある程度完成に近いベース処理の実装を依頼。
🪄 内部処理のブラッシュアップ
主に以下を依頼することが多い
- 処理の共通化
- 可読性・保守性の向上
- 結合や条件が多い複雑なSQLの修正
※ 場合によっては、不正な修正や品質・パフォーマンス低下につながるため生成後のコード内容のチェックは必須(その内容把握のためコード説明を依頼することも多い)
🪄 SQLの作成・変換
DBスキーマをプロンプト共有することで希望するクエリを簡単に作成可能。
drizzle等のフレームワークによる形式で記述されたソースコード内のクエリを、DBツール上で即実行可能な形式へ変換可能。
🪄 テストコードの実装
🪄 不具合調査・修正
該当ソースコード・エラーメッセージをプロンプト共有することで、ある程度明確な原因特定・対応方法を導出が可能。