trm11tkr / flutter-training-yumemi

Apache License 2.0
1 stars 0 forks source link

Session4 #5

Closed github-actions[bot] closed 1 year ago

github-actions[bot] commented 1 year ago

Mixin パターン

Dart には Mixin という機能があり、公式パッケージから AutomaticKeepAliveClientMixinTextSelectionDelegate などの便利なものがいくつか提供されています。

実際に Mixin を作成して使ってみましょう。

課題

ヒント

on キーワードによって Mixin の使用を制限することができます。

さらに、on キーワードで指定したクラスのメソッドをオーバーライドすることもできます。

参考資料

Mixin とは

Mixin または Mix-in(ミックスイン)は、オブジェクト指向プログラミングで用いられる技法であり、他のクラスから 使用されるメソッド群を持つクラスが、他のクラスのスーパークラスにならないで済むための、特別な多重継承関係を 実現するためのメカニズムを意味している。Mix-in されたメソッドに、他のクラスがアクセスする方法はそれぞれの 言語仕様に依存している。

Mix-in はコードの再利用性を促進し、従来のクラスの多重継承がもたらしていた菱形継承などの数々の問題を回避する。 多重継承を採用していない言語においては、多重継承と類似の機能性をより堅牢にして提供する。 依存性逆転の原則のデザインパターンにも応用されている。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

Mixin の採用言語例