イテレーション 8 ふりかえり¶
概要¶
| 項目 | 内容 |
|---|---|
| イテレーション | 8 |
| 対象言語 | C# / F# |
| 期間 | Week 15-16(2 週間) |
| 計画 SP | 13 |
| 実績 SP | 13 |
| 達成率 | 100% |
主要指標¶
| メトリクス | 値 |
|---|---|
| テスト数 | 67(C# 38 + F# 29) |
| C# ソースファイル | 11 ファイル |
| F# ソースファイル | 2 ファイル |
| C# 記事 | 12 章 + index |
| F# 記事 | 12 章 + index |
| コミット数 | — |
| Cake ビルド | 全ターゲット成功 |
KPT 分析¶
Keep(継続すること)¶
- .gitignore ファースト戦略の成功
- IT7 の学びを活かし、
apps/dotnet/.gitignoreを最初に作成 -
bin/、obj/、.vs/の誤コミットを完全に防止できた -
Nix 環境の安定利用
nix develop .#dotnetで .NET SDK 8.0.416 を一貫して使用-
環境差異による問題がゼロだった
-
並列エージェントによる記事生成の効率化
- C# 12 章と F# 12 章を並列エージェントで同時生成
-
2 言語 24 章分の記事を短時間で完成させた
-
Cake ビルドツールの採用
- C# DSL で記述できるため .NET エコシステムとの親和性が高い
-
Clean → Build → Test → Check のタスクチェーンが明確
-
C#/F# 記事の完全分離
- ユーザーの要望に基づき、
docs/article/csharp/とdocs/article/fsharp/に分離 - 各言語 12 章の独立した記事として管理しやすくなった
Problem(問題点)¶
- Codex サンドボックスの書き込み制限
- Codex MCP サーバーのサンドボックスモードでファイル書き込みが制限された
danger-full-accessを指定しても read-only で動作することがあった-
直接実装に切り替えることで対応したが、Codex 分業体制が使えなかった
-
IFizzBuzzCommand の Execute メソッド重複(CS0111)
Execute(int number)とExecute(int count)が同じパラメータ型で衝突- C# のメソッドオーバーロードではパラメータ名だけでは区別できない
-
ExecuteValue/ExecuteListにリネームして解決 -
F# テストの完全修飾名の必要性
open FizzBuzzFSharp.Domain後にDomain.generateで FS0039 エラー-
FizzBuzzFSharp.Domain.generateと完全修飾名を使用する必要があった -
docs/article/index.md テーブルの列数不整合
- C#/F# 分離時にヘッダーとデータ行の列数が一致しなかった
- ファイル全体の書き直しで対応
Try(次に試すこと)¶
- Codex 代替策の事前準備
- Codex のサンドボックス制限が発生した場合の代替フローを事前に定義
-
直接実装モードへの切り替え判断を早期に行う
-
C# インターフェース設計のレビュー強化
- メソッドシグネチャの衝突は設計段階で検出すべき
-
Command パターンでは
ExecuteValue/ExecuteListのように意図を明示的にする -
F# モジュール参照のベストプラクティス
openディレクティブ使用後の名前解決ルールを記事内で解説する-
完全修飾名 vs 短縮名の使い分けガイドラインを設ける
-
テーブル更新時のバリデーション
- Markdown テーブルの列数整合性を変更前にチェックする
--lintスキルの活用を徹底する
次のイテレーションへの引き継ぎ¶
IT9(Clojure)への申し送り¶
.gitignoreを最初に作成する(target/, .lein-*, .nrepl-port の除外)- Nix 環境(
nix develop .#clojure)を必ず使用する - Codex が利用不可の場合は直接実装に早期切り替え
- LISP 方言固有の概念(S 式、マクロ、永続データ構造)の記事説明に注力
- GitHub Issue #9 の同期を忘れない
- Phase 3 の最初のイテレーションとしてテンプレートを JVM 言語向けに調整
Phase 2 完了の確認¶
- IT5(Go): ✅ 完了(10 SP)
- IT6(PHP): ✅ 完了(10 SP)
- IT7(Rust): ✅ 完了(10 SP)
- IT8(C#/F#): ✅ 完了(13 SP)
- Phase 2 合計: 43/43 SP(100%)
更新履歴¶
| 日付 | 更新内容 | 更新者 |
|---|---|---|
| 2026-03-02 | 初版作成 | AI |