0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIで「設計を試すコスト」が激減した話 ─ 日経平均株価ポジション推計アプリを1日で実装してみた

0
Last updated at Posted at 2026-05-06

はじめに

最近

  • GitHub Actionsをちゃんと触りたい
  • Clean Architectureを実装レベルで理解したい
  • ChatGPT Plusで使えるCodexを試したい
    という動機があり,学習用として株価分析アプリを作ってみました.
    (ChatGPT PlusでCodexが使えることを最近知りました...)

成果物

GitHub: https://github.com/rang000/index_analysis
株価データを取得し,ポジションを簡易推計して,Streamlitで可視化するアプリ.

CTA_20260506.png

株価分析_20260506.png

主な構成:

  • Streamlitによる可視化
  • Clean Architectureによる責務分離
  • GitHub Actionsによる自動テスト / lint

学び

Clean Architectureを実装して一番良かったことは
依存関係を壊しにくい構造を作れたこと
です.

依存関係は以下のようにしました.
UI → UseCase → Port(interface) → Infrastructure

この形にすると,

  • UIから直接データ取得を書かない
  • 外部ライブラリをUseCaseに持ち込まない

という制約を構造として強制できるようになります.

実装中,「Streamlit側から直接データ取得を書きたい」場面が何度もありましたが,Port経由にしていたため,結果として,依存方向を崩さず実装を進めやすくなりました.

archtecture_20260506.png

AI駆動の活用

役割分担は,設計は人,実装はAIというよくある構成を取りました

  • レイヤ分割や依存方向は自分で決める
  • 実装はCodexに補助してもらう

Clean Architectureを本で学習しましたが,AI駆動と合わせて試行を高速に回せることで,より身についたかと思います.(実際に自分だけで組むとなると,かなり時間がかかったと思います...)

今後について

今回はGW中に短時間で作ったため,

まずは,「依存方向を壊さない」ことを優先しました.

今後は,

  • UseCaseの責務
  • Portの粒度
  • テストしやすさ

も含めて,もう少し設計を詰めていきたいです.

まとめ

これまでClean Architectureを概念として学んだものの実装経験があまりなく実践で上手く活用できていなかったと思います.
ただ今回,Codexによって実装コストがかなり下がったことで,「実際に試しながら理解するもの」に変わった感覚があります.

AIでコードを書くというより,「設計をすぐ実装して試せるようになった」
というのが,今回一番大きかったことでした.

参考文献

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?