JA

機能を作るのは簡単になりました。でも、消すのはどうでしょう? どこからも呼ばれていないと判断することは可能です、でも「呼ばれる経路は残っているが、使われない」機能はどうでしょう?

目的があって追加した機能も、機能刷新や、別の機能に役割を奪われたりする場合もあります。検証のために追加したが、役目を終え不要になるケースもあります。そうして”あまり”使われなくなった機能は静かに積み上がります。残したままにすると、回帰テストは膨らみ、コードは少しずつ重くなり、変更のたびに足を引っ張る。

では、どうすれば安全に消せるのか。鍵は「もう誰からも呼ばれていない」状態を作ることです。別のコードからも、積まれたジョブからも、古いアプリからも呼ばれなくなれば、その機能は安心して消せます。この「呼ばれなくしていく」作業を、このトークでは「枯らす」と呼びます。いきなり消すのではなく、まず使わせない。値を返すのをやめる。旧バージョンのアプリを壊さないよう受け止める。そうしてトラフィックやデータが枯れてから、順序を守って消す。

実際に廃止したRails APIの機能を題材に、この「枯らしてから消す」一連の流れをお見せします。型を持てば、削除は一大事ではなく日常の選択肢になる。すると、作る合間に消せる。作るときから「どう消すか」も一緒に考える。そんな当たり前を持ち帰ってもらう15分です。

Magenta Hall
DAY 2 10:40 – 10:55
Miyuki Koshiba

PicoRubyist & Creative Coder / 株式会社スマートバンクでAI家計簿アプリ「ワンバンク」の開発・運用をしている。Ruby on Railsによるモバイルアプリケーション向けAPI開発を主に担当。