問題タブ [protocol-extension]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 同じジェネリック プロパティとセットアップを持つ複数のクラス。重複するコードを減らすにはどうすればよいですか?
似たような質問がたくさんありますが、探しているものを正確に説明するものを見つけるのに苦労しています
Services
ジェネリックData
型を処理する複数の があります。現在、それらはすべて半「抽象」クラスをサブクラス化していますが、DataService
これは、これらすべてがServices
同じ保存されたプロパティを持っているためです。
そしてそれらinit
も同じです:
方法もsetup
同じです
これらのクラスの違いは、現在「抽象」関数で定義されているデータの処理方法です。
ほとんどのリソースは、プロトコルとプロトコル拡張を推奨しています。私もどちらを好むかですが、それを難しくしている 2 つの点は次のとおりだと思います。
格納されたプロパティ宣言を 1 か所に保持し、
init
クラスのジェネリック型。プロトコルを介してそれを維持するのは簡単ではないようです
しかし、この現在のソリューションの問題は、
- 誰にも実際にインスタンスをインスタンス化させたくない場合は、「抽象」クラスが公開されます
- は
eventReceivedHandler
コンパイラによって強制されません
ここに正しい解決策はありますか?このアーキテクチャは十分に一般的であると思いましたが、オンラインで何かを見つけるのに本当に苦労していました。私の検索クエリには、使い古された用語が多すぎます