嫌われプログラミングの代弁者

「何で頭ごなしに嫌う人間が居るのか」を色々考える

まともな名前を付けさせてくれない 3

どの様な話?

変数名などに、

  • まともな名前(妙に一般的な、普遍的な名前)を付けたがり、
  • 名前が同じなら、操作的意味も同じ(しかもその意味は自分が思っている通り)

(という様な非常にナイーブな(悪い意味で)態度で)としたがる事を始めたのは、パソコンサーバー(WindowsNTなど)上で、RDBを取り扱う前提のシステム畑の人間でした。

コボラーは言われるままの無関係でした。

コボラーは無関係な訳?

(より自由になったパソコンCOBOLで無い、昔の)COBOLの変数名は、

  • 英大文字、数字8文字以内で、先頭に数字はダメ(ABC012 の様な)
  • 「項目定義」なる手書きの(後にMS Excelの)資料が必須

となっていました。そもそも「まともな名前」をつける余地が有りませんでした。

ですので、その変数の操作的意味は、毎回毎回長い時間をかけて、一々「調査」して会得していました。(その事は非難の対象でした。)

もちろん

もちろん、1つの横断的に利用されるDBのみのシステムの場合では、正しかったのかも知れませんが、
ドメイン駆動設計を持ち出さないとならなくなる様な、複雑なシステム
(大規模とは限らない、複数DBやそもそもサーバーレスなどでは小規模でも「境界づけられたコンテキスト」が出来るかも知れません
では、

  • まともな名前を付けさえすれば、その意味は同じになる

といった言霊頼みの設計は成り立ちません。

そうなると、

そうなると、「境界づけられたコンテキスト」を超えた場合、別のユビキタス言語になるというのは、

  • 名前では無く、一々「調査」しないと操作的意味を得られないなら、
  • 「境界づけられたコンテキスト」を超えた範囲での、統一的な命名規約は優先順位が下がる(分かり合うのに努力が必要な前提なら、名前は多少違っていてもどうということはない)

という消極的な意味も有るのかも知れません。

結論

「境界づけられたコンテキスト」内では依然、命名規約は必要で、
(このブログの対象で有る)プログラミングの範囲では、矢張り勝手に、まともな名前を付けたいという要望は相変わらず満たされないので、

これからも「まともな名前を付けさせてくれない」事でプログラミングが嫌いになる人は存在し続けることでしょう。