324. A if rewrite

לפעמים יוצא לנו לכתוב קוד כזה:

1
2
3
4
5
6
7
8
9
10
11
12
if ((value == "Mango") ||
(value == "Banana") ||
(value == "Melon") ||
(value == "Honey") ||
(value == "Cinnamon"))
{
Console.WriteLine("I know a song with this word!");
}
else
{
Console.WriteLine("Dude?");
}

(ראו למשל טיפ מספר 315)

הבעיה שקוד זה לא קריא, והif מתחיל לתפוס הרבה שורות. ניתן לשפר זאת בצורה הבאה:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
ICollection<string> words =
new List<string>
{
"Mango",
"Banana",
"Melon",
"Honey",
"Cinnamon"
};
if (words.Contains(value))
{
Console.WriteLine("I know a song with this word!");
}
else
{
Console.WriteLine("Dude?");
}

זה גם מאפשר לנו להוסיף עוד תנאים לא קשורים לif.

כמובן אפשר להפוך גם את הCollection להיות Member של המחלקה וכו’.

המשך יום קריא יותר טוב.

שתף