【要約】27卒が要件定義をもとにDiscordで日本語ToDo管理できるBotをPythonで作った [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
開発者は、Discord上で日本語によるタスク管理を実現しようとした際、以下の課題に直面した。
- ・タスクの期限、担当者、繰り返し設定などの実用的な機能が必要であった。
- ・開発過程で、SQLiteのデータファイルを誤ってGitHubの履歴に含めてしまうミスが発生した。
- ・単なる削除では、Gitの履歴上に機密情報や不要なデータが残ってしまう問題があった。
// Approach
開発者は、AIツールによる開発効率化と、Gitの高度な操作を用いて課題を解決した。
- ・Notion、ChatGPT、Codexを連携させ、要件定義の精度向上とコード生成を効率化した。
- ・git-filter-repoを導入し、以下のコマンドで履歴からdataディレクトリを完全に削除した。
git filter-repo --force --path data --invert-paths- ・リモートリポジトリを再設定し、
git push origin main --forceで履歴を更新した。
// Result
開発者は、実用的な機能を備えたToDo Botを完成させ、Gitのミスも適切に修正した。
- ・担当者設定、リマインド、タスクの復元といった高度な機能を実装できた。
- ・SQLiteのデータを誤って公開した際、履歴から完全に抹消することに成功した。
- ・AIを活用した、要件定義からテストまでの開発フローを確立した。
Senior Engineer Insight
> AIによる開発支援は、プロトタイピングの速度を劇的に向上させる。しかし、生成されたコードの品質やセキュリティには注意が必要だ。本件のSQLite利用は、小規模用途には適している。しかし、高トラフィック環境では、DBのロック競合がボトルネックとなる。大規模運用を見据えるなら、PostgreSQL等のクライアント・サーバー型DBへの移行と、非同期処理の最適化が不可欠である。Gitの履歴削除手順は、実務でも極めて重要な知識である。