『論語』正名論から考えるシステム保守
(本を読んだ感想として書いているだけであり、論語理解の正当性は保証しません。悪しからず)
コーディングにおける命名
よく知られているように、コーディングにおいて命名は非常に大切な問題であるとされている。変数名やメソッド名など、様々な名前に対してよりよい名前をつけることが重要である。
先日、『中国哲学史-諸子百家から朱子学、現代の新儒家まで』という新書を読んだ。そこで紹介されている『論語』の正名論はこうした命名についての話をしていると感じた。
正名論
孔子に弟子が政治はまず何をすべきか?と質問した。孔子は”名を正す”ことだと答える。それに対し弟子はなぜ?迂遠では?と聞き、孔子は返す。名前が不正だと言葉の意味が通らない。言葉の意味が通らなければ仕事ができない、刑罰も公平さを欠いて、民は途方に暮れる。君子は名を実を伴うようにしなければならないし、名を慎重に扱わなくてはならないのだ、と。
名は実(実体/実践)を伴うようにしなければならない=”名実一致”を主張している。実の伴わない名前は人間やシステムにとって何が正なのかわからなくしてしまうため、国を混乱させる。
また、弟子は孔子の言葉に「それは迂遠ではないか?」つまり「何か行動すべきでは?」と言ったため、孔子に「野蛮だな!」と返される。孔子は春秋戦国時代という戦乱のなかで、力ではなく言葉による統制を主張した、とされている。
名実一致
力は"行動(実践)それ自体"によって自身の正当性を主張する。「私たちの行動は正しい。故に結果が出れば皆私たちの正しさがわかるはずだ!」
一方で"名実一致"は正しい実践とは何かを論じていない。「お前が何を主張しようと自由だが、ただただ問題なのは、お前の言っていることとやっていることが一致していないことだ!」
孔子がここで正しい実践内容について論じないのは、おそらく世の正しさが移ろいゆくことを前提にしているからだろう。正名論はそんな前提の中で秩序をつくる方法について述べているのだと思う。
システム保守という正名
ある時点での正しさは常に正解ではないし、しかしある時点での正しさが常に間違っている訳でもない。名と実は乱れゆくので、新しい秩序の確立のため、実が伴うように名の修正を、名に合わせて実の修正を繰り返し続ける。
これってまさにシステム保守ではないか、とぼくは経験的にも感じる。コーディングがリファクタリングという形を伴うのでいちばんわかりやすいが、ユビキタス言語といった話を考えればシステム全般で発生することである。
正名に終わりはない。しかし保守とはそういうものだろう、と。力を為すことではなく、秩序を為すこと。これを意識した方が良いのだろうと改めて思う。
この記事が気に入ったらサポートをしてみませんか?