定義ファイルの参照は一箇所に封じ込めるべきです。
config.cf の参照は FML::Config オブジェクト経由で行なわれます。 config.cf の詳細は、このクラスの中に閉じ込められ、ハッシュもしくは get()/set() スタイルのアクセスメソッドによる呼び出しによるアクセスのみ を行なうべきです。
プロセスオブジェクトの生成の際に fml/main.cf の中身を持つハッシュがブー トローダから渡されます。このハッシュへ($main_cf)のアクセスも一箇所での み扱うべきですが、今のところ
FML::Process::Kernel FML::Process::Switch FML::Process::Utilsの三箇所でハッシュへの生アクセスが行なわれています。 FML::Process:: 以下に限られるという点で比較的マシですが、 さらに整理し一箇所にまとめるべきでしょう。
一方、ステート管理の制御は FML::Process::State だけにあり、このクラス を通じて PCB オブジェクトへのアクセスをしています。
PCB へのアクセスは全て PCB オブジェクトを通じて行なわれているのであち こちで参照しても良い気がしますが、PCB は config オブジェクトほど単純で はなく引数が多くなっています。そのため、PCB へのアクセスをもっと集中さ せるべきと考えます。たとえば、せめて FML::Process 以下と FML::PCB だけ からのアクセスを許すようにするといった具合です。現状、もっと多くの場所 でPCB オブジェクトへのアクセスが行なわれています。
Copyright (C) 1993-2025 Ken'ichi Fukamachi mail:< fukachan at fml.org >