サイズの種類を取得する必要があるメソッドがあります。たとえば、 "small"、 "medium"または "large"と返される文字列が必要です。各条件が別の条件に依存する方法を効率的に設計するにはどうすればよいですか?
だから私はGetSize(int size)
を呼び出します。しかし、私はまた、サイズを返す方法を知っている必要があります、私は "小さな"を返すか、私は "s"を返すしたいですか?だからメソッドはGetSize(int size, enum format)
になりました。
今私は、スイッチケースを行うことができますが、それはだから私は「大きさ」のために、すべてのケース内部のスイッチケースをしなければならないでしょう
switch (size)
{
case SMALL_SIZE:
switch(format)
case format::short
case format::long
}
だろう。私はそれを分解して、すべてのサイズのケースでフォーマットを取得するメソッドを呼び出すこともできます。
これはたくさんの仕事のようですが、ここでは3つのサイズのケースしかありませんが、それは他のケースでは10ケースだったと想像してください。私のソリューションは最高ですか、それとも良い方法がありますか?
何を? – PlasmaHH
これはそれぞれの 'case format :: X'で実際にどのような行動が取られるかによって異なります。ルールがあれば、それを考慮に入れることができます。すべてのケースが具体的であれば、それはより困難になります。メソッドが何をするかについて、より多くの洞察を提供してください(より多くのコードが理想的です)。 –
2つの異なる機能はどうですか? 'GetSizeShort(int size)'と 'GetSizeLong(int size)' – Tim