星期天,去看看我媽,在一個十字路口堵車差不多一個小時,真是鬱悶.心里想著,這里要是有座立交橋就好了,車輛便可以分流.想著想著,這些車輛彷彿變成了我們Developing系統中的數據流.
我們平時有用到的Switch,現在看來,它就是這"米"字路口,記得剛開始Code的時候,特別喜歡用它.覺得幾種情況羅列在這裡,很清晰.看看下面的代碼:
Class Dog
{
private string A_name;
private string B_name;
public Dog {};
public string GetAname()
{
return A_name;
}
public string GetBname()
{
return B_name;
}
public string getName(string dogType)
{
Switch(dogType)
{
case “A”:
dogName =GetAname();
break;
case “B”:
dogName =GetBname ();
break;
default:
dogName = “There is not the “+ dogNameSequence +” sequence !”;
break;
}
}
}
class do
{
public do{};
static void Main (string[] args)
{
//I want to get the name of the type A;
string dogAName;
Dog dog = new Dog();
dogAName = dog. GetName(“A”);
}
}
這樣的話,對每個Sequence都是需要判斷,遍歷一次.在看看下面的代碼:
abstract class Dog
{
public string DogName;
}
class A : Dog
{
private string A_name;
public string DogName
{
get
{
return A_name;
}
}
}
class B : Dog
{
private string B_name;
public string DogName
{
get
{
return B_name;
}
}
}
class do
{
public do{};
static void Main (string[] args)
{
//I want to get the name of the type A;
string dogAName;
Dog dog = new A();
dogAName = dog.DogName;
}
}
很顯然這個就相當於是架起了一座天橋,雖然耗了點”成本”,但是大大提高了執行的效率.這篇文章涉及到的設計模式可能有點膚淺 , 希望后續能和兄弟們共同探討更好更靈活便捷的設計模式.