プラグインをサポートするアプリケーションを作成しました。現時点では、プラグインの基本クラスは抽象クラスを実装し、それにプラグインの名前を提供します (一部省略):
public class AppExecutePlugin : APlugin
{
public AppExecutePlugin() : base("Application Execute")
{
}
... (other stuff here)
}
現在、カスタム属性を使用してプラグインに名前を付けることを考えています (構文エラーは気にしないでください)。
[PluginName("Application Execute")]
public class AppExecutePlugin : APlugin
{
public AppExecutePlugin()
{
}
}
私は自分のアプリで属性を使用することはめったにないので、2 番目のアプローチがより抽象的な実装につながるのか、それとも最初のアプローチと比較して一般的に利点があるのかを知りたいと思います。