私はPCLで遊ぶことに決め、クラスライブラリをPCLに変換しました。特定のプラットフォームのタイプの可用性の背後にある決定は何ですか?
驚くことではありませんが、欠落しているタイプのエラーが多数表示されます。
しかし、私が本当に混乱していたのは、何が欠けているかによってです。
CancelEventArgs
クラスがサポートされていますが、CancelEventHandler
はサポートされていません。
これは、特定のタイプを含まない単純な機会または意図的な決定ですか? プラットフォームの設計に関する有益な情報を、タイプの存在または不在という事実から抽出できますか?
は、私は明確にしましょう:
すぎて、プラットフォーム固有の概念が削除されたとき、私は例を理解することができます。
しかし、PCLのことはあまり明らかではありません。
私は自分自身を他人よりも賢明ではないと考えていたので、私は明確な理由を探します。
一般的なタイプをできるだけ大きく設定することは、プラットフォーム間の移行を容易にすることです。 Eric Lippert氏は、すべての機能が価値/経費の観点から正当化されなければならないと述べています。したがって、私は大きな型式の値を過大評価するか、可搬性を実装することの難しさを過小評価します。コード分析を実行する特定のイベントとしては
EventHandler<TEventArgs>
に別の同様のquestionをgenreicバージョンを使用する音recomendationを与えました。
ありがとう、ダニエル。最初からヘルパーライブラリをPCLとして作成することをお勧めしますか? 'helper libray'と言っているのは、一般的に列挙型やその他のものの拡張メソッドが含まれているライブラリを意味します。 –
@voroninpヘルパーライブラリに簡単に実装できるAPIがある場合は、先に進んでください。 –