目次
はじめに
今月は主に「DjangoでのXクローン開発」と「ソフトウェアテスト技法の学習」の2つのテーマに取り組みました。Xクローン開発では、通知機能のモデル設計からシグナル処理、ビュー、テンプレート、UI調整、そしてResendを利用したメール通知機能まで一貫して実装しました。月の後半からはUdemy講座でソフトウェアテスト技法を体系的に学び、同値クラステストや境界値テスト、ディシジョンテーブルなどの知識をインプットしました。開発実践と品質向上のための理論学習をバランス良く進めた1ヶ月でした。
学習時間
- 合計学習時間: 49.5時間
- 日別平均学習時間: 約2.25時間
学習内容
- Django Xクローン開発(通知機能)
- Notificationモデルの設計と実装(GenericForeignKeyの活用)
- Djangoシグナル(
@receiver)を用いた通知生成・削除処理の実装 - 通知一覧表示用のビューとテンプレートの作成
- 通知一覧画面のUI/レイアウト調整、ページネーションの実装
- 独自ドメイン取得とResendを利用したメール通知機能の実装
- 本番環境でのシード投入と、それに伴うシグナル処理のデバッグ
- ソフトウェアテスト技法の学習(Udemy)
- テストの基礎(目的、限界、テストレベル)
- 同値クラステスト、境界値テスト
- ドメイン分析テスト、ディシジョンテーブル
- ペア構成テスト(直交表)、状態遷移テスト
- 各技法に関する演習問題の実施と復習
- その他
- Googleアナリティクス(GA4)のブログへの導入
よかったところ
- Xクローンの通知機能を、モデル設計からUI、メール通知まで一通り実装しきれたことで、プロダクトとしての完成度が向上した。
- Djangoのシグナル機構など、フレームワークのより深い仕組みを実践を通じて理解できた。
- 独自ドメイン取得やメール配信サービス(Resend)の導入など、インフラ周りの知識と経験を得られた。
- これまで感覚的に行っていたテストについて、同値クラスや境界値などの体系的な技法を学び、品質保証の考え方を言語化できるようになった。
- 設計の重要性(モデル設計、UIの責務分担など)を、実装を通じて再認識できた。
問題点と改善点
問題点
- テスト技法の学習で、講義を聞いただけの「分かったつもり」の状態で総合演習に臨んだ結果、知識を応用できずにつまずいてしまった。
- 仕様の粒度が粗いまま実装に着手したため、途中で方針がぶれることがあった。
- DBにUNIQUE制約を追加する際、既存データの不整合を考慮していなかったためエラーが発生した。
改善点
- テスト技法の学習では、各単元の演習問題に立ち返って自力で解き直すことで、知識の定着を図っている。
- 実装前に仕様をより詳細に検討し、設計段階での手戻りを減らす。
- データベースのスキーマ変更を行う際は、必ず既存データへの影響を調査する。
まとめ
今月はXクローンの通知機能を完成させ、プロダクト開発を大きく前進させることができました。後半から始めたソフトウェアテストの学習では、品質に対する意識を一段階引き上げることができました。これまでは「動くものを作る」ことが中心でしたが、今後は「品質をどう保証するか」という視点を強く持って開発に取り組む必要があります。
来月は、まず学習したテスト技法をXクローン開発に適用し、テストケースの設計と実装を行います。並行してUdemy講座の演習を継続し、知識をさらに確実なものにしたいです。