私が持っていると言う:
interface Thing
{
GetThing();
}
class FastThing : Thing
{
public int GetThing()
{
return 1;
}
}
class SlowThing : Thing
{
public int GetThing()
{
return GetThingFromDatabase();
}
}
これは、リスコフ代替原則の違反ですか?
FastThing
にSlowThing
、LSPは適用されません。Thing::GetThing
「非常に高速です」というコメントを追加すると、質問を議論できます。
GetThingFromDatabase()
物議を醸すほど遅くはありません。Factor4096BitPublicKey();return 1;
物事をもう少し面白くするでしょう。