/note/tech

ソフトウェア設計の歴史は、グローバル変数との戦いの歴史かもしれない。プログラムのどこからでも...

ソフトウェア設計の歴史は、グローバル変数との戦いの歴史かもしれない。プログラムのどこからでも書き換えと参照が可能なグローバル変数を避けるために、引数で値を渡すようにし、データとロジックをクラスにカプセル化し、可能な限り可変状態を依存しないようにする方法が強く推奨されてきた。

しかし、実際には、50年以上前から続くグローバル変数を撲滅するための戦いのほとんどは、ポインタ渡し、publicなgetter/setter、データベースという名の巨大なグローバル変数など、グローバル変数を愛好するものたちがひねりだす技術に打ち負かされたきた。

@masuda220