UECジャーナル

ユニケージ開発手法 ソフトウェア

標準環境の考え方

ユニケージ開発手法のソフトウエアはUNIX系のOSとシェルスクリプトのみで構成されている。シェルはUNIX系のOSには確実に搭載されているため、ユニケージ開発手法はUNIX系OSであればすべてにおいて適用可能といえる。移植性を高めるためにOSやシェルの方言の使用をなるべく避け、基本的な機能だけを組み合わせてアプリケーションの構築を実施している。

移植性確保の考え方として、多岐にわたるOSやミドルウェアのラッパーを作成し標準的な開発環境を用意するというものがあるが、ユニケージ開発手法では別の方法を採用している。ユニケージ開発手法は標準的なハードウェアの上で経年劣化しないメインストリームOSを選び、さらに標準的なコア部分のみを選ぶことで移植性の担保としている。

これにより、ソフトウェアの無用なレイヤを省き、ハードウェアの高速化の恩恵を直接享受することができるようになる。ユニケージ開発手法におけるソフトウェアは階層化を避けており、なるべく数少ない良いコマンドの組み合わせで構成されている。

小さく効率的な部品

ユニケージ開発手法におけるシェルスクリプトの中核をなすソフトウェアはコマンドである。UNIX系OSに標準で搭載されているsort(1)やcat(1)といったコマンドだけでは業務処理には十分とはいえない。ユニバーサル・シェル・プログラミング研究所では過去2,000以上のコマンドを開発し、現在は厳選された数十個のコマンドを業務コマンドとして活用している。

ユニケージ開発手法で使用するコマンドはシンプルであり、単機能に特化している。例えばself/delf(列の選択)やjoin1/loopj(データの結合)など極めてシンプルだ。外部仕様が分かれば誰でも自分でソースコードを記述して、同機能のコマンドをつくることができる。

こうした業務向けコマンドはユニケージ開発手法の独自性のひとつとなっているが、コマンド自体に秘匿性の高いノウハウがあるわけではない。それはナイフやフォーク、スプーンといった道具に似ている。食器は誰でも理解できるが、それは長年の経験の中でシンプルにまとめ上げられてき結果である。

ユニケージ開発手法の業務コマンドはシステム構築の基本的な要素部品からなっており、誰でも理解できる。ユニケージ開発手法における優れたソフトウェア技術とは、特定のエキスパートにしか理解できない複雑さや難解ではなく、誰でも理解できる優れたアイデアをシンプルな技術で実現することにある。これは卓越したセンスと多くの経験の中で磨き上げられたものである。

ユニケージユニバーサル・シェル・プログラミング研究所の登録商標。

※ 2012年7月から始まる教育講座に合わせて、従来の「ユニケージ」または「ユニケージ方法論」は「ユニケージ開発手法」へ名称を統一。

last modified: 2014-01-13 16:01:13