直交性とは

最近周りで直交性、直交性うるさいので勝手な妄想を含めてメモ。
元々は幾何学の用語で、ユークリッド空間とか基礎解析という単語に理解のある人限定でお馴染みの単語である。
それ以外の一般人には、独立性や分離性と言えば分かりやすいだろう。というか普通は独立性と言う。
ある場所を変更したとき、他の場所に影響が出ないことを直交性がある、または直交性が高いと言う。
プログラミングの世界では関数のライブラリ化の過程で直交性が確立するし、ライブラリ化しなくとも通常は同レベルの関数同士が変数を取り合わない限り直交性は確保される。よって、通常の開発において問題となることは少ない。
下位から上位へのデータ書き込みをした場合が直交性が確保されない代表的なパターンであるが、そうせざるを得ない状況に陥った場合は開発手法の問題ではなくコーディングの問題であることが多い。