前回までの取り組みで、Todoアプリとして機能するための必要最小限の実装は完了した。今回は実装した機能を改良していく。前回までの実装ではタスクの一覧表示順序について何も考えていないので、この出力にルールを設けることにする。
どのようなルールにするかは使いながら変更していくとして、今回はわかりやすく今日を期日の区切りとして表示順序を変更するような実装の変更を行う。
連載「生成AI×プログラミング」のこれまでの回はこちらを参照。
これまでの成果物
これまでの成果物をまとめる。SQLiteのデータ構造、構成しているPythonスクリプトファイル、アプリのサブコマンド、Pythonスクリプトを実行するためのPowerShellラッパースクリプトは次のようになる。
列名 | 型 | 内容 |
---|---|---|
id | INTEGER (主キー) | タスクの一意識別子。 |
title | TEXT | タスクのタイトル。 |
description | TEXT | タスクの詳細な説明。 |
due_date | DATE | タスクの期日。 |
priority | INTEGER | タスクの優先度。1が最も高い優先度で、3が最も低い優先度。 |
completed | INTEGER | タスクが完了したかどうかを示すフラグ。0は未完了、1は完了。 |
ファイル名 | 内容 |
---|---|
todo_app.py | CUIの処理を行うファイル。ユーザーが直接操作する。 |
todo_db_manager.py | SQLiteデータベースとのやり取りを担当するファイル。 |
todo_app.ps1 | todo_app.pyを実行するためのラッパースクリプト。 |
サブコマンド | 引数 | 内容 |
---|---|---|
add | ー | タスクの追加 |
remove | id | タスクの削除 |
list | ー | タスクの一覧表示 |