W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
大鳥:“準(zhǔn)確的說,就是讓業(yè)務(wù)邏輯與界面邏輯分開,讓它們之間的耦合度下降。只有分離開,才容易達(dá)到容易維護(hù)或擴(kuò)展。”
小菜:“讓我來試試看。”
小菜:“鳥哥,我寫好了,你看看!”
客戶端代碼
class Program{ static void Main(string[] args){ try{ Console.Write(請(qǐng)輸入數(shù)字A:); string strNumberA = Console.ReadLine(); Console.Write(請(qǐng)選擇運(yùn)算符號(hào)(+、-、*、/):); string strOperate = Console.ReadLine(); Console.Write(請(qǐng)輸入數(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(您的輸入有錯(cuò): + ex.Message); } } }
Operation運(yùn)算類
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; } }
大鳥:“哈,孺鳥可教也,:),寫得不錯(cuò),這樣就完全把業(yè)務(wù)和界面分離了?!?/p>
小菜心中暗罵:“你才是鳥呢?!?口中說道:“如果你現(xiàn)在要我寫一個(gè)Windows應(yīng)用程序的計(jì)算器,我就可以復(fù)用這個(gè)運(yùn)算類(Operation)了?!?/p>
大鳥:“不單是Windows程序,Web版程序需要運(yùn)算可以用它,PDA,手機(jī)等需要移動(dòng)系統(tǒng)的軟件需要運(yùn)算也可以用它呀?!?/p>
小菜:“哈,面向?qū)ο蟛贿^如此。下會(huì)寫類似代碼不怕了?!?/p>
大鳥:“別急,僅此而已,實(shí)在談不上完全面向?qū)ο?,你只用了面向?qū)ο笕筇匦缘囊粋€(gè),還兩個(gè)沒用呢?”
小菜:“面向?qū)ο笕筇匦圆痪褪欠庋b、繼承和多態(tài)嗎,這里我用到的應(yīng)該是封裝。這還不夠嗎?……我實(shí)在看不出,這么小的程序如何用到繼承。至于多態(tài),其它我一直也不太了解它到底有什么好處,如何使用它。”
大鳥:“慢慢來,有的東西好學(xué)了,你好好想想吧,我要去“魔獸”了,改時(shí)聊?!?/p>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: