- 著者
-
荻原 剛志
- 出版者
- 情報処理学会
- 雑誌
- 研究報告ソフトウェア工学(SE) (ISSN:21862583)
- 巻号頁・発行日
- vol.2011, no.23, pp.1-8, 2011-03-07
- 被引用文献数
-
1
オブジェクト指向を用いない手続き型言語のプログラミングにおいても,機能を提供するコード自体を変更せずに,モジュール間の結合を変更しやすくする方法があれば,独立性,再利用性を高めることができる.本稿では,複数のモジュールが共通して参照する変数を共有変数と呼び,共有変数の変更に伴って,関連するモジュールの手続きを呼び出す仕組みを提案する.モジュール間の連携は動的に変更可能であり,呼び出される手続きの詳細はモジュール内部に隠蔽できる.この仕組みをcovalと呼び,C言語のライブラリとして実装した.Covalを利用したソフトウェアの構築,拡張の例を示し,手続き型プログラミングにおけるデザインパターンの利用可能性について考察する.If some mechanism that can easily change the binding among software modules is provided, it is possible to increase the independency and the reusability of modules, even using procedural programming languages which do not have object-oriented features. This paper proposes a new binding mechanism based on variables shared among modules. The binding mechanism activates functions associated with the shared variable when its value is changed. Binding among modules can be dynamically modified. The concrete information of functions can be hidden inside the modules. This mechanism, coval, is implemented as a library in C. This paper also show some examples of design patterns with coval.