數據類型經過枚舉來區分是一種簡單實用的作法。架構
缺點是使用的時候須要經過if 、switch 去判斷什麼類型執行什麼分支操做,說是缺點其實也要看具體場景。不過若是if代碼多會致使代碼很長是確定的。it
複雜場景下,好比,不一樣枚舉類型,類自己會有不一樣的屬性,若是這些在一個類裏來作,就會出現這種狀況: 「只有當枚舉是XX的時候,YY屬性纔有值」,這在我來講不可接受的架構。重構
有種辦法重構,就是使用visitor模式(記得第一次是在裝配腦殼的VBF裏面實踐,:D)數據類型
先吃飯,回頭再寫數據