質問するログイン新規登録

意見交換

4回答

506閲覧

AIで大規模リファクタする際の注意点について

batting

総合スコア4

AI(人工知能)

AI(人工知能)とは、言語の理解や推論、問題解決などの知的行動を人間に代わってコンピューターに行わせる技術のことです。

リファクタリング

リファクタリングとはコードの本体を再構築するための手法であり、外見を変更せずに内部構造を変更/改善させることを指します。

Claude

Anthropic社が開発したAIアシスタント。自然な日本語対話に加え、長大なコンテキスト(文脈)の読み込みが可能で、コード生成や解析に優れています。安全性と有用性を重視して設計された大規模言語モデルです。

0グッド

1クリップ

投稿2026/07/09 02:46

0

1

背景

数年前に個人で作ったアプリがあります。
ReactNative + EXPO, TypeScirptで作っていて、動いてはいるものの

・テストがほぼ無い
・依存ライブラリが古くてバージョンアップが止まっている
・昔の自分が書いたクソコードで、命名や責務分割が今見るとつらい

といった状態です。

Claude Fable 5 が7/13まで利用延長されたということで、この機会に大規模にリファクタ(場合によっては一部作り直し)してみたいと考えています。

意見をお伺いしたいこと

実際にAIを使って既存プロジェクトを大規模リファクタした方に、経験ベースで伺いたいです。
当方開発経験はあまりなく、特に以下について知見が全然ないので気になっています。

  • 進め方の粒度
    • ファイル単位、機能単位、一気に全体、どのスコープで投げる、進めるのが破綻しにくいでしょうか
  • 安全網の作り方
    • リファクタ前にまずテストをAIに書かせて挙動を固定してから着手みたいなのは有効でしょうか?
    • その際に便利なライブラリやツールなど
  • AIに任せて事故りやすい箇所
    • 暗黙の仕様、非同期処理、認証まわりなど、人間が握るぺきと感じたポイントがあれば知りたいです。
  • 仕様の伝え方
    • ドキュメントの整備など

上記に限らず、いろんな知見をお伺いできますと幸いです。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

回答4

#1

tt-tt

総合スコア342

投稿2026/07/09 09:05

あんまりちゃんとした経験がないのであれですが、しっかりテストを作り込んでからリファクタに入ることではないでしょうか?
あとから実装に合わせてテストをつくるのは本来微妙ですが、現実装を正としてテストを作成し、AIでリファクタした結果すべてのテストが通るようになってればよいように感じます。
あとは、切り戻しがしやすいようにとかでしょうか...
AIを使うなら一気にコードが変わりますし、自分が認知していない部分も編集されてしまうので、そういった予防線を張っておくの大事かなって思います

#2

batting

総合スコア4

投稿2026/07/09 09:26

ありがとうございます!

現実装を正としてテストを作成し、AIでリファクタした結果すべてのテストが通るようになってればよい

参考になります!
AIがどこまで網羅的にテスト作ってくれるか疑問ではあるのですが、、、E2EだとPlaywright MCPとかで自動生成できるみたいなので、試しながら進めてみようと思います!

#3

yuyafujiwara

総合スコア81

投稿2026/07/13 08:06

カンファレンスで見ただけですが、価格コムが大規模なリプレイスをしていて参考になるかもしれません。

個人的に学びだったのは

  • 段階的に実装:まず分割可能な機能で実験してリスクヘッジする
  • 現行システムを正解とする:上の方もおっしゃっていたことですが、同時に仕様変更を挟もうとするのは諦め、現状の再現に徹するのが良さそう
  • AIの自己改善フロー:Skillを作成する手間を省き、実装と並行してSkillも追加
    こんなところでしょうか。
    参考になれば幸いです

https://speakerdeck.com/tkyowa/kakaku-com-ai-driven-system-renewal-0fc7e978-0e39-4bba-93eb-17cd56ecd1c1

#4

batting

総合スコア4

投稿2026/07/13 09:05

Orchardさん

ありがとうございます!
30年分の技術負債をAIで解消...カカクコムさん規模がすごいですね、参考になります!

現行システムを正解とする

やっぱりここは肝になりそうですよね。
そのうえで「段階的」に進めて行くのが良い気がしています..!
ありがとうございます

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

この意見交換はまだ受付中です。

会員登録して回答してみよう

アカウントをお持ちの方は

関連した質問