大话设计模式(四 业务的封装)
(續(xù)上篇)?
??????? 小菜:“你的意思是分一個類出來? 哦,對的,讓計算和顯示分開。”
??????? 大鳥:“準確的說,就是讓業(yè)務(wù)邏輯與界面邏輯分開,讓它們之間的耦合度下降。只有分離開,才容易達到容易維護或擴展。”
??????? 小菜:“讓我來試試看。”
class Program{static void Main(string[] args){try{Console.Write("請輸入數(shù)字A:");string strNumberA = Console.ReadLine();Console.Write("請選擇運算符號(+、-、*、/):");string strOperate = Console.ReadLine();Console.Write("請輸入數(shù)字B:");string strNumberB = Console.ReadLine();string strResult = "";strResult = Convert.ToString(Operation.GetResult(Convert.ToDouble(strNumberA),Convert.ToDouble(strNumberB),strOperate));Console.WriteLine("結(jié)果是:" + strResult);Console.ReadLine();}catch (Exception ex){Console.WriteLine("您的輸入有錯:" + ex.Message);}}}public class Operation{public static double GetResult(double numberA,double numberB,string operate){double result = 0d;switch (operate){case "+":result = numberA + numberB;break;case "-":result = numberA - numberB;break;case "*":result = numberA * numberB;break;case "/":result = numberA / numberB;break;}return result;}}
? ?小菜:“鳥哥,我寫好了,你看看!”
??????? 大鳥:“哈,孺鳥可教也,:),寫得不錯,這樣就完全把業(yè)務(wù)和界面分離了。”
??????? 小菜心中暗罵:“你才是鳥呢。”??? 口中說道:“如果你現(xiàn)在要我寫一個Windows應(yīng)用程序的計算器,我就可以復(fù)用這個運算類(Operation)了。”
??????? 大鳥:“不單是Windows程序,Web版程序需要運算可以用它,PDA,手機等需要移動系統(tǒng)的軟件需要運算也可以用它呀。”
??????? 小菜:“哈,面向?qū)ο蟛贿^如此。下會寫類似代碼不怕了。”
??????? 大鳥:“別急,僅此而已,實在談不上完全面向?qū)ο?#xff0c;你只用了面向?qū)ο笕筇匦缘囊粋€,還兩個沒用呢?”
??????? 小菜:“面向?qū)ο笕筇匦圆痪褪欠庋b、繼承和多態(tài)嗎,這里我用到的應(yīng)該是封裝。這還不夠嗎?…………我實在看不出,這么小的程序如何用到繼承。至于多態(tài),其它我一直也不太了解它到底有什么好處,如何使用它。”
??????? 大鳥:“慢慢來,有的東西好學(xué)了,你好好想想吧,我要去“魔獸”了,改時聊。”
(待續(xù))
出處:http://www.cnblogs.com/cj723/archive/2006/08/31/491022.html
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的大话设计模式(四 业务的封装)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大话设计模式(三 复制VS复用)
- 下一篇: 大话设计模式(五 体会简单工厂模式的美妙