輪郭指向

描主宇田川浩行K#F85E
上描き希哲9年(2015年)
05月04日 03:49
下描き希哲9年(2015年)
02月16日 20:51
利承
ライセンス
希哲館普通利承(KULクール

DO: Delineation-oriented

描出模定を中心としつつ,コードに落していく。文書化も兼ねられる。

この描出は「素描」です。

広告

一覧

=}{*}

こういうのを私は「輪郭指向」(OLO: outline-orientation)と呼んでいる。これも考え方としては輪郭法応用の一つ。

=}{*}

これは函数の設計などでも普通に使える考え方なのだが,「小さな仕事をまとめるのもまた小さな仕事である」ことに気付くと,例えば GNU 系ツールみたいに,Unix 哲学風の小物ツールの能力不足を補うために一つの駒手(コマンド)の応付(オプション)を増やしていく,ような過ちを犯さなくても済むのではないかと感じた。

=}{*}

具体例を挙げるなら,さっき,「引数の重複を削除する」ために printfsortuniq を使った交度(コード)を一つの駒手(コマンド) _kn unq としてまとめた。任意の引数を与えると揃え(ソート)をして重複を削除した出力を返す。これは明らかに美しい。

=}{*}

ここでいう「小ささ」というのを凝集性のことだとすれば,例えば小さな仕事をする論組(プログラム)同士を一つの目的のためにまとめるだけの仕事をする論組も「小さい」と言っていい。要するに,マクロ的なものだ。基本的にはこれで「Unix 哲学」は救われる。

=}{*}

Unix 哲学(の一部)って,「小さな論組(プログラム)の組み合せで目的を実現する」みたいなことに捉えられがちだと思うのだが,これにはもちろん欠点があって,周知の通り設計哲学としてはすでに破綻している。要は,細かい駒手(コマンド)をいちいちパイプで繋いで……ってあまり現実的ではない。そこはもうちょっと「立体的」に捉えていいと思う。

=}{*}

この辺は,KEY(Keep Enough for You,十分を保て)原則と組み合わせて論じると面白いことになるだろうな,という直感がある。

=}{*}

輪郭」の特殊形が主体であったり客体であったりする……と考えると,輪郭法の役割は交度(コード)上というより UML のような模定モデリング)工程にあるのかもしれない。

出力論組プログラム虎哲*イチ 1.01
制作・運営:希哲社
© K1-13 (2007-2019) KiTetuSha