インターフェイス分離の原則とは何ですか?C#でそれを実装する方法は?
クライアントは、使用しないインターフェースに依存することを強制されるべきではありません。
インターフェイス分離の原則は、クライアントが使用しないインターフェイスを実装することを強制されるべきではないと述べています。
1つのファットインターフェイスの代わりに、メソッドのグループに基づいて多くの小さなインターフェイスが優先され、それぞれが1つのサブモジュールを提供します
インターフェイス分離の前
例
public interface IProduct { int ID { get; set; } double Weight { get; set; } int Stock { get; set; } int Inseam { get; set; } int WaistSize { get; set; } } public class Jeans : IProduct { public int ID { get; set; } public double Weight { get; set; } public int Stock { get; set; } public int Inseam { get; set; } public int WaistSize { get; set; } } public class BaseballCap : IProduct { public int ID { get; set; } public double Weight { get; set; } public int Stock { get; set; } public int Inseam { get; set; } public int WaistSize { get; set; } public int HatSize { get; set; } }
インターフェイス分離後
例
public interface IProduct { int ID { get; set; } double Weight { get; set; } int Stock { get; set; } } public interface IPants { int Inseam { get; set; } int WaistSize { get; set; } } public interface IHat { int HatSize { get; set; } } public class Jeans : IProduct, IPants { public int ID { get; set; } public double Weight { get; set; } public int Stock { get; set; } public int Inseam { get; set; } public int WaistSize { get; set; } } public class BaseballCap : IProduct, IHat { public int ID { get; set; } public double Weight { get; set; } public int Stock { get; set; } public int HatSize { get; set; } }
-
「ペイント3D」とは何ですか、またどのように使用されますか?
Windows 10を使用している場合、最近「ペイント3D」と呼ばれる奇妙なアプリがコンピューターに表示されるのを見たことがあるかもしれません。一見すると、Windowsの各バージョンで定番となっているおなじみのWindowsアプリPaintに似ているように聞こえます。しかし、最後の「3D」は何を意味するのでしょうか。これはPaintの改良版ですか、それともまったく別のものですか? ペイント3Dとは Paint 3Dは、MicrosoftがWindows10用に公開した機能の無料バンドルであるCreatorsUpdateを介して提供された可能性があります。この更新には、平均的なユーザーがコン
-
BIOS とは? BIOS の更新方法は?
BIOS とは何か、および BIOS を更新する方法: お使いの PC で、キーボード、電源、またはインターネット接続、PC の速度などのソフトウェアに関連する問題に直面するときはいつでも、ほとんどの場合、問題は何らかの方法で BIOS に関連しています。同じことに関して修理担当者または IT 担当者に相談すると、さらなるトラブルシューティングを行う前に、BIOS を更新するよう提案または指示されます。多くの場合、BIOS を更新するだけで問題が解決するため、それ以上のトラブルシューティングは必要ありません。