ユニバーサル・オブジェクト指向

オブジェクト指向は、オブジェクト(客体)をベースにしている。客体は主体を明らかにして初めて、その主体の意識された行為によって顕在化する訳だ。ソフトウェアの現場では、この主体をこれまでの狭いアプリの枠を超えて業務、企業、業界、国家・・・というように拡大することで、再利用性・開発効率の向上を目指している。オブジェクト指向は、現実世界のものを主体の意識を通して客体化することでオブジェクトとしてモデル化できる。狭いアプリや業務にとどまらず、企業、業界、国家・・・と対象領域を拡張することが可能なのである。

しかし、このように対象領域を拡大していく場合、多民族・多文化・多言語に対する問題を解決しなければならない。これをテーマとしているのが「ユニバーサル・オブジェクト指向」である。

「ユニバーサル・オブジェクト指向」では、多民族・多文化・多言語を超えて共通化されたオブジェクトの概念を利用する必要がある。実現手段としては、クロス・リファレンスできる多言語辞書を利用することになるだろう。「ユニバーサル・オブジェクト指向」の大きな問題の1つは「名詞クラス」である。

名詞クラス

ソフトウェアは、末端の設計レベルでは米英語で表現/命名されるモジュールを構成要素とする。米英語では、名詞には単数/複数の区別しかない。この米英語においてさえ、命名では悩ましい部分がある。オブジェクト指向では客体を単数形で表現し、複数形はオブジェクト間の多重度で表現する形式をとる。紛らわしいのは、単複同形のものや、複数形で単数扱い、単数形で複数扱いなどの存在だ。たくさんあるが以下のようなものだ。

company,audience,staff,sheep
goods,series,news
state/status
datum/data
person/people

一般に我々がステータス、データと呼んでいるものも複数形である。とりあえずオブジェクト指向では客体を単数形で表現し、複数形はオブジェクト間の多重度で表現するので注意すれば済むことではある。(※羊はなぜ単数/複数の区別がないのだろう)

ではフランス語などではどうだろう。名詞クラスには男性/女性/中性/複数という概念が出てくる。オブジェクトをクラス分けする際に、男性名詞の集合を作るというような場面が出てくる。アルファベット順に並べるのと同じように、男性名詞/女性名詞などでグルーピングするというようなユースケースが出てくる訳だ。また同じ「あなた」でもtuとvousがある。これも米英語にはないクラスではある。

さらにだ。スワヒリ語では、名詞クラスは12あるのだ。人、物、樹木、石、場所、果実、親族や動物、抽象物などだ。ちなみに昔、スワヒリ語をちょっと勉強したことある。さらにさらにだ。ネット情報だが、同じバントゥー語群のマリラ語では、なんと18のクラスがあるといわれている。以下のような調査報告があった。「血・水・汗といった語が複数形で表現される。光や匂いという語が単数・複数で使い分けられたりする。料理など匂いの源が明確な場合は単数形、お花畑などのようにどこからともなく香ってくる場合は複数形を用いる」のだそうだ。

つまり、「ユニバーサル・オブジェクト指向」では、名詞として表現されるオブジェクトには、民族・文化・言語を超えた共通の概念を表現できるようにしなければならない。

※関連記事:スワヒリ語