December 2024
Beginner to intermediate
164 pages
1h 15m
Japanese
前の章では、ソフトウェアシステムの経済的価値を将来のディスカウントキャッシュフローの合計という形でモデル化した。私たちはこのフローを変えることで価値を生み出す。
このモデルにおいて、ソフトウェア設計者として働くのはすでに簡単ではなくなっている。私たちが生きているのはゴルディロックスの世界だ。設計が多すぎても早すぎてもいけないし、少なすぎても遅すぎてもいけない。だが、それだけではない(もしそんなに簡単ならみんなとっくに始めているだろうし、本書を書く理由もない)。それが、ときに矛盾する価値の源泉、オプショナリティだ。
何十年も前、ウォール街の金融取引ソフトウェアに取り組んでいたことがある。いつものように背景調査を行うと、オプション価格計算というものに出会った。私は没頭した。少し前にテスト駆動開発(TDD)を考案したばかりで、練習になるネタを探していた。オプションの価格計算はぴったりな例に見えた。正解のある、複雑なアルゴリズムだからだ。
私は既存のオプション価格決定公式をテストファーストで実装した(その過程で浮動小数点数を比較する際にイプシロンが必要であることも発見した)。オプションに対する直感を磨くなかで、その感覚は私のソフトウェア設計に対する全般的な考えに大きく影響し始めた。
すべてのアルゴリズムを実装して見せることはできないが、私が学んだ教訓をあなたに伝えることはできる(本当に「わかった」状態になりたければ練習をお勧めする)。
Read now
Unlock full access