新整理了一些,內(nèi)容不算多,希望能對大家有用,盡管我也未能按照規(guī)范來做,但是規(guī)范的存在依然有意義。 Openlaszlo編程規(guī)范(第二部分) 2007/04/24 Openlaszlo編程規(guī)范第一部分主要側(cè)重與基本的編碼習(xí)慣和解決性能問題,對于解決復(fù)雜應(yīng)用的編碼設(shè)計(jì)問題涉及不足,本文則主要闡述這方面的內(nèi)容,并揭示一些openlaszlo開發(fā)的高級主題。 1.透徹理解openlaszlo開發(fā)的核心思想: a)完全基于組件的應(yīng)用:整個應(yīng)用是由多個組件構(gòu)成而不能單純由標(biāo)簽構(gòu)成 b)事件驅(qū)動運(yùn)行:組件之間的通訊由事件負(fù)責(zé) c)數(shù)據(jù)驅(qū)動視圖:針對數(shù)據(jù)而不是直接針對視圖進(jìn)行編程 2.盡量讓減少canvas內(nèi)的視圖數(shù)目 這里的視圖指的是自定義組件,也是整個應(yīng)用的各個組成部分(portlet),有幾個部分就應(yīng)該有幾個組件,絕對不應(yīng)該在應(yīng)用(canvas)內(nèi)出現(xiàn)view標(biāo)簽。 3.充分運(yùn)用event的功能 組件之間的交互(通訊)最好的途徑就是event,而且是自定義的帶組件信息的event,自定義的event解耦了組件之間的依賴,讓整個應(yīng)用變得可維護(hù)、可擴(kuò)展。 4.針對data編程而不是針對視圖編程 按照傳統(tǒng)的web開發(fā)思想,總是習(xí)慣來刷新頁面元素來達(dá)到更新視圖的目的,但是在以數(shù)據(jù)為中心的RIA應(yīng)用中,開發(fā)者所要做的是先想到視圖后面的數(shù)據(jù),先來改變數(shù)據(jù),以達(dá)到改變視圖的目的。 5.不要作偷懶的開發(fā)者 能獨(dú)立成組件的部分就作成組件,而不能認(rèn)為它不必要或者不是為了重用,這樣做雖然工作量大了些,但是越到了項(xiàng)目的后期,尤其是需求變更時,就會發(fā)現(xiàn),早期的努力是值得的。 6.不要忽略清理工作 使用過的變量,在操作結(jié)束時就應(yīng)當(dāng)立即清空,否則會引起很麻煩,會導(dǎo)致bug的產(chǎn)生,尤其是基于modaldialog的應(yīng)用。 7.不要一次初始化所有的視圖 如果初始化界面中不顯示的內(nèi)容,盡量讓它不初始化,方法是:initstage="defer",這樣做的好處是大大減少應(yīng)用初始化的時間,只有在使用時才進(jìn)行初始化,方法是:targetview.completeInstantiation(); 8.組件內(nèi)不應(yīng)出現(xiàn)與canvas相關(guān)的對象或者屬性 這個符合組件的封裝性和獨(dú)立性,如果出現(xiàn)的話將造成應(yīng)用程序的緊密耦合,組件也就不能稱之為組件了,除非絕對有必要引入canvas內(nèi)的全局屬性,比如鼠標(biāo)位置等等。 9.遵守openlaszlo官方的Best_practices: http://wiki./Best_practices 10.慎用新版本尤其是4.0 根據(jù)官方的releasenote來看,swf&dhtml版本的應(yīng)用性能比較差,而且大部分lps3.3組件都不能在4.0版本上使用,新版本的成熟還需時日。 |
|