親クラスであるPlatformがあります。すべての特定のデバイスクラスは、この親クラスから継承されます-Device1、Device2、.....DeviceN。
デバイスの入力に基づいて、それぞれのDeviceクラスのオブジェクトを作成し、それに応じて動作します。
このコードで私が観察したいくつかのことは、基本クラス(プラットフォームクラス)でのデバイス固有の動作の処理です。例、
function doSomething
{
initiateSomething();
.
if ($base->getPlatform() eq 'Device1')
{
........
}
startSomething();
doneSomething();
}
このタイプの条件付きデバイス固有のコードは、親クラスのさまざまな場所に分散されています。このコードはDevice1に固有であり、他のデバイスには適用されません。このデバイス固有のコードを関数としてDevice1クラスに入れてここで呼び出すことを考えましたが、それも機能しませんでした。この関数はDevice1に対してのみ実装されているため、他のデバイスに対してこのコードを実行すると失敗します。
あなたの助けは大歓迎です。