ライブラリ デザイナーとして、外部プラグインを介して拡張できるようにライブラリを作成するための一般的なパターン/トリックは何ですか?
プラグインがやりたいことは次のとおりです。
私の最初の本能は、それらをイベントとして公開し、プラグインからコールバックをアタッチできるようにすることです (例: onCommandLoaded、onCommandMatched、onSpeechRecognized など)。しかし、これは、より多くの機能が要求されるにつれて簡単に成長する可能性があり、プラグインが私が予期していなかった機能を拡張することを許可しません (それが悪いことなのかどうかはまだわかりません)。
何か案は?