← 制作記一覧へ

状態を整える処理が、大事な情報まで捨てて建設費が化けました

公開: 2026-09-20 · #156 / 最終更新: 2026-09-20 個人開発失敗談理想のビルオーナーデータ整備

📌 記事の取り扱いについて(公開当時の内容を含みます — タップで詳細)

本記事は公開当時の体験・気づきをまとめたものです。現在のツール数・プラン数・対象年齢・記事数・仕様とは異なる場合があります。最新の内容は各ツールページをご確認ください。ツールや外部サービスの仕様・料金は変更されることがあるため、利用前には各公式情報も併せてご確認ください。記載に誤りを見つけられた場合はお問い合わせフォームよりご連絡いただけると助かります。

共有したURLを開いたら、金額が変でした

好きな店を積み上げて自分のビルを建てる、というシミュレーターを作っています。作ったビルはURLで共有できるので、家族に見せたり、あとから自分で開き直したりできます。

その共有したURLを開いたとき、建設費がおかしな値になっていました。作ったときに見た数字と違います。本来よりも、明らかに少ない金額になっていました。

「整える処理」が捨てすぎていました

原因は、開いたときに走る状態を整える処理でした。

URLに載せた情報は、途中で欠けたり、古い形式のままだったりすることがあります。そのまま読み込むと画面が壊れるので、おかしなものを取り除いてから使うようにしていました。安全のための処理です。

ところがこの処理が、取り除きすぎていました。「自分の家」にした階の印や、座席の数にあたる情報まで、まとめて捨てていたのです。捨てられた分は計算に入りません。その結果、合計金額が実際とかけ離れた値になっていました。

安全のために入れた処理が、いちばん大事な部分を削っていたわけです。

しかも、捨てられるのは保存した状態を読み込み直すときだけです。作っている最中の画面では、何も問題が起きません。自分で作って眺めている限り正常で、共有した先や開き直した画面で壊れる。 いちばん見せたい場面で壊れるのだから、性質としてはかなり悪い部類でした。

捨てるものと残すものを、書き出しました

直すにあたって、何を捨てて、何を残すのかを一度書き出しました。作ったときは「おかしなものを捨てる」としか考えていなかったので、その「おかしなもの」の定義があいまいなままでした。

書き出してみると、捨てるべきものは思ったより少なく、ほとんどは残すべきものでした。逆に言えば、捨てる条件を広く書きすぎていたということです。

あわせて、直したあとには、計算の結果があり得ない値——たとえばマイナスの建設費——になっていないかも確かめました。「起きるはずのない値」の形を先に考えておくと、次に何かが壊れたときの手がかりになります。

学び・「安全のため」の処理が、いちばん危ないことがあります

今回いちばん考えさせられたのは、壊したのが「守るための処理」だったことでした。

この処理を入れたときの動機は、まっとうなものです。おかしなデータで画面が壊れるのを防ぎたかった。実際、その役目は果たしています。ただ、守る範囲を広く取りすぎると、守るべきものまで巻き込むということまでは考えていませんでした。

しかも、この手の処理は静かに働きます。何かを捨てても、捨てたとは言いません。言わないからこそ「安全に処理された」ように見えます。

いまは、こういう処理に手を入れるときは、捨てる条件を狭く書き、実際に何が捨てられたのかを確かめてから使うことにしています。全部きれいに片付いたように見えるときほど、何を片付けたのかを確かめたほうがいい。ビルの金額が化けてくれたおかげで、そこに気づけました。

そして、気づけたのは金額という分かりやすい形で異常が出たからでもあります。もし捨てられたのが見た目に影響しない情報だったら、静かに欠けたまま共有され続けていたはずです。壊れたときに、どこかで派手な数字になってくれる作りは、それ自体がありがたい性質なのだと思いました。


← 他の制作記を見る | トップ | お問い合わせ