摘要:好的業(yè)務(wù)組件設(shè)計一個好的業(yè)務(wù)組件必然是邏輯清晰以及方便修改維護。一些涉及到的概念數(shù)據(jù)驅(qū)動單向數(shù)據(jù)流有限狀態(tài)機模板模板應保證邏輯清晰,業(yè)務(wù)復雜的部分可拆分成獨立的業(yè)務(wù)組件又或者通過組裝數(shù)據(jù)關(guān)系。交互狀態(tài)復雜的業(yè)務(wù)組件應用有限狀態(tài)機以及。
好的業(yè)務(wù)組件設(shè)計
一個好的業(yè)務(wù)組件必然是邏輯清晰以及方便修改維護。
下面以 Vue 為例子進行進行概念上的簡單說明。
一些涉及到的概念數(shù)據(jù)驅(qū)動UI
單向數(shù)據(jù)流
有限狀態(tài)機
模板模板應保證邏輯清晰,業(yè)務(wù)復雜的部分可拆分成獨立的業(yè)務(wù)組件又或者通過 computed 組裝數(shù)據(jù)關(guān)系。
不應該在模板寫邏輯語句,僅使用簡單的條件判斷以及方法調(diào)用或表達式。
狀態(tài)的設(shè)計(data、computed)狀態(tài)分全局狀態(tài)以及本地狀態(tài),全局狀態(tài)就是 sotre(Vuex 或者自己另外定義的 Vue 對象),本地狀態(tài)包括數(shù)據(jù)(data)以及根據(jù)數(shù)據(jù)響應的狀態(tài)(computed)。
需要根據(jù) data、store 或者 其他 computed 響應的同步狀態(tài)都屬于 computed,computed 必須是同步數(shù)據(jù),computed 內(nèi)部禁止任何異步操作。
所有需要異步獲取以及無法由其他數(shù)據(jù)響應變化的數(shù)據(jù)都是 data。
有時候可以把 computed 作為一個不可寫屬性使用,返回一個常量或者其他想輸入到模板的值。
原則是 data 的結(jié)構(gòu)應清晰簡單,數(shù)據(jù)之間的關(guān)系放在 computed。
數(shù)據(jù)的處理服務(wù)器獲取的數(shù)據(jù)不要在業(yè)務(wù)組件直接寫請求,應通過 services 封裝。
數(shù)據(jù)單位應保存一致(例如時間使用 13 位,金錢使用分),需要進行轉(zhuǎn)換的數(shù)據(jù)按就近原則進行處理:如果是服務(wù)器數(shù)據(jù)在 services 進行轉(zhuǎn)換,如果是用戶輸入的數(shù)據(jù),通過 computed 進行 get/set 處理。
發(fā)送到服務(wù)器的數(shù)據(jù)也是一樣,應在 services 里面處理數(shù)據(jù)的單位以及一些簡單的判斷。
保證代碼的可維護性代碼、數(shù)據(jù)邏輯之間的關(guān)系應保持簡單與一致,不應存在多種不同的業(yè)務(wù)關(guān)系模型。
單向數(shù)據(jù)流。
數(shù)據(jù)處理以及操作分開。
交互狀態(tài)復雜的業(yè)務(wù)組件應用有限狀態(tài)機以及 computed。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/97742.html
摘要:移動精英開發(fā)社群的第期,也是圍繞架構(gòu)這個話題進行討論。本次我們希望結(jié)合實際開發(fā)中遇到的問題,來聊聊移動端的架構(gòu)設(shè)計。這樣的模式改進一些,可能會更適合移動端架構(gòu)。潘衛(wèi)杰之前我們公司移動端的大項目就是插座式開發(fā)的,批量出各個行業(yè)的。 此前,58 同城的技術(shù)委員會執(zhí)行主席沈劍在 OneAPM 的技術(shù)公開課上分享過一個主題,「好的架構(gòu)不是設(shè)計出來的,而是演技出來的」。因為對很多創(chuàng)業(yè)公司而言,隨...
摘要:分享實錄云計算技術(shù)源于互聯(lián)網(wǎng)公司,現(xiàn)在云計算已經(jīng)是下一代企業(yè)級的發(fā)展趨勢。如何做云計算一直是云計算技術(shù)的領(lǐng)導者。互聯(lián)網(wǎng)公司的快速發(fā)展,已經(jīng)印證了云計算技術(shù)和云原生應用相比傳統(tǒng)構(gòu)架的巨大優(yōu)勢。 今天小數(shù)又給大家?guī)硪黄韶洕M滿的分享——來自KVM社區(qū)線上群分享的實錄,分享嘉賓是數(shù)人云CEO王璞,題目是《云計算與 Cloud Native》。這是數(shù)人云在KVM社區(qū)群分享的第一彈,之后還有數(shù)...
摘要:這對復雜問題定位是有好處的。同時,也是純函數(shù),與的是純函數(shù)呼應。強約束約定,增加了內(nèi)聚合性。通過約定和全局的理解,可以減少的一些缺點。約定大于配置也是框架的主要發(fā)展方向。 React+Redux非常精煉,良好運用將發(fā)揮出極強勁的生產(chǎn)力。但最大的挑戰(zhàn)來自于函數(shù)式編程(FP)范式。在工程化過程中,架構(gòu)(頂層)設(shè)計將是一個巨大的挑戰(zhàn)。要不然做出來的東西可能是一團亂麻。說到底,傳統(tǒng)框架與rea...
摘要:二樂高式松耦合架構(gòu)落地快速實現(xiàn)需求與需求實現(xiàn)越來越慢的矛盾如何解決最終白山的產(chǎn)品架構(gòu)聚焦在解耦上,方便平臺快速迭代,減少系統(tǒng)間依賴程度,打通無關(guān)聯(lián)項目,為運營互動提供高效支持,確保服務(wù)質(zhì)量。 作者:王康 白山聯(lián)合創(chuàng)始人兼產(chǎn)品副總裁。 王康先生主要負責產(chǎn)品的完善與升級、產(chǎn)品開發(fā)流程把控及進度協(xié)調(diào)、產(chǎn)品設(shè)計改進及定期優(yōu)化、產(chǎn)品全生命周期管理等工作。他帶領(lǐng)團隊實現(xiàn)白山首款產(chǎn)品CDN-X的多項...
閱讀 3100·2021-10-12 10:20
閱讀 2828·2021-09-27 13:56
閱讀 802·2021-09-27 13:36
閱讀 1441·2021-09-26 09:46
閱讀 2428·2019-08-30 14:02
閱讀 2696·2019-08-28 18:14
閱讀 1274·2019-08-26 10:32
閱讀 1716·2019-08-23 18:25