當(dāng)今程序開發(fā)領(lǐng)域中,Java以及.Net已經(jīng)成為應(yīng)用程序開發(fā)的主流技術(shù)。就.Net而言,用于UI的技術(shù)有傳統(tǒng)的Windows Form、WPF(Windows Presentation Foundation)、Silverlight,它們有強(qiáng)大的支持和發(fā)揮的應(yīng)用空間,然而它們有一個(gè)共同點(diǎn):艱難的平臺(tái)界面設(shè)計(jì)。作為開發(fā)人員,UI的排版和程序的編寫同等重要,UI的設(shè)計(jì)與開發(fā),愈來愈得到程序開發(fā)人員的的重視,UI的好壞直接影響的軟件外觀和易用性。該文則是從UI開發(fā)的.Net技術(shù)實(shí)現(xiàn)層面對(duì)其開發(fā)方法進(jìn)行的探討。
開發(fā)人員在得到設(shè)計(jì)師的UI設(shè)計(jì)后,首先要做的是對(duì)設(shè)計(jì)進(jìn)行分析,將整體UI以控件為單位進(jìn)行分解,逐步實(shí)現(xiàn)各個(gè)控件。數(shù)據(jù)呈現(xiàn)類控件以業(yè)務(wù)為單位進(jìn)行分解,為每個(gè)控件設(shè)計(jì)數(shù)據(jù)關(guān)聯(lián)接口,以實(shí)現(xiàn)數(shù)據(jù)的聯(lián)動(dòng);操作類控件以響應(yīng)事件的方式調(diào)用相應(yīng)功能的執(zhí)行方法或數(shù)據(jù)控件。
圖1是一個(gè)典型的軟件UI,主要由功能樹(Function)、數(shù)據(jù)列表(TableData)、數(shù)據(jù)項(xiàng)(DataItem)、操作按鈕(Operation)構(gòu)成。
在應(yīng)用系統(tǒng)開發(fā)的過程中,經(jīng)常會(huì)遇到同一功能的控件重復(fù)使用的情況,而本文所采用的UI開發(fā)方法很好的解決了控件的可復(fù)用問題,并在控件內(nèi)部定義了數(shù)據(jù)源接口和事件,實(shí)現(xiàn)了數(shù)據(jù)的加載和傳遞,且每個(gè)控件功能單一、清晰,既各自獨(dú)立,又可以相互組合,相對(duì)實(shí)體外部耦合度低,而控件內(nèi)部內(nèi)聚性高。當(dāng)業(yè)務(wù)發(fā)生變化時(shí)可以根據(jù)需求方便的進(jìn)行控件的擴(kuò)展,降低了系統(tǒng)的維護(hù)難度和開發(fā)成本。