以下に例を示します。
公開リスト getPizzaIngredients(pizzaName)
{
PizzaName = HAWAIIAN の場合
戻る [
チーズ、
トマトソース、
パイナップル、
ハム];
PizzaName = ITALIAN の場合
戻る [
チーズ、
トマトソース、
ペパロニ、
オリーブ];
PizzaName = MEATLOVERS の場合
戻る [
チーズ、
トマトソース、
ペパロニ、
ベーコン、
ソーセージ、
オリーブ];
null を返します。
}
ここでは、各リストで成分を繰り返しています。別の方法は次のとおりです。
公開リスト getPizzaIngrediants(pizzaName)
{
ing = [];
ing.add(チーズ)
ing.add(トマトソース);
if PizzaName in (HAWAIIAN) ing.add(PINEAPPLE);
if PizzaName in (HAWAIIAN) ing.add(HAM);
if PizzaName in (ITALIAN, MEATLOVERS) ing.add(PEPPERONI);
if PizzaName in (ITALIAN, MEATLOVERS) ing.add(OLIVES);
if PizzaName in (MEATLOVERS) ing.add(BACON);
if PizzaName in (MEATLOVERS) ing.add(SAUSAGE);
返す;
または、より簡潔にすることもできます。
公開リスト getPizzaIngrediants(pizzaName)
{
ing = [];
ing.add(チーズ、トマトソース)
if PizzaName in (HAWAIIAN) ing.add(PINEAPPLE, HAM);
if PizzaName in (ITALIAN, MEATLOVERS) ing.add(PEPPERONI, OLIVES);
if PizzaName in (MEATLOVERS) ing.add(BACON, SAUSAGE);
返す;
個人的には、最初の例は冗長で、変数の繰り返しが含まれていますが、他の 2 つのソリューションよりもはるかに読みやすく、変更も容易です。
この種のプログラミングスタイル/問題に関する規則はありますか?