7章データ駆動
以前は、プログラマーである自分の仕事は、データを操作するコードを書くことだと思っていた。入力が出力になり、データが情報になる。私のプログラムは、オブジェクト指向言語や関数型言語で書いているときでさえ、かなり命令的に構造化されていた。なぜなら、コードが主導権を握っていると考えていたからだ。
もちろん、私は間違っていた。コードは主導権を握っていない。コードは単に、価値を提供するために私たちが使用する手段の1つに過ぎない。
私は今、開発に対して異なる見方を持っている。それによって私のコードはよりシンプルになった。プログラミングへの効果的なアプローチは、データとコードが制御を交互に渡し合うことだ。コードがデータを生成することもあれば、データがコードを駆動することもある。
この利点は明らかだ。データはコードよりも扱いやすい。理解しやすく、操作しやすく、変更しやすい。データでコードを駆動すればするほど、コードもその特性を受け継ぐことになる。
| Idea 45 |
データはコードよりもシンプル |
すべてのアプリケーションは、入力として受け取っているデータによって駆動されている。それらの値は条件分岐やループに影響を与える。しかし、ここで言っているのは、より深い層のデータ、つまりアプリケーションのロジックの一部であるデータについてだ。
これは非常に多くの方法で実現できる。この章では、テーブルを使ってコードの実行順序を制御する方法と、ステートマシンを使ってそのアイデアをさらに発展させる方法の2つについて見ていく。
これらの概念は氷山の一角に過ぎない。アプリケーションの設定もまた、その振る舞いを制御するデータだ。そのデータを供給し更新する方法は、アプリケーションをシンプルにも、より煩雑にもする。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access