設計目標
- 合理拆分任務
結構與表現分離
- 關注點分離: html/css/js
- 反關注點分離:css in js(styled-components)
- 結構描述:json/xml,Virtual DOM
- 表現層:多端渲染,多平臺渲染
約定優於配置
- 構建腳本的約定:jenkins等
- 文件目錄的約定
- 接口形式接口參數的約定
- 變量命名的約定
- eslint
- TypeScript
設計模式
- 責任鏈模式
- 觀察者模式
- 代理模式
- 命令模式
- 裝飾器模式
狀態一致性
- 單一數據源 : redux,服務端推送
- 單向數據流
技術選型
- 沒有最好的,只有某種業務下最適合的
- 周邊生態,社區支持,人員招聘
組件聚合複用原則
- 組件聚合模式:細粒度組件自由組合。優先使用
- 依賴倒置模式:業務流程邏輯相同,僅對部分場景或UI顯示存在差異。
React邏輯複用
-
react hooks
-
HOC 高階組件:注入props
- 反向繼承
- 代理模式
SOLID 原則(借鑑面向對象開發原則)
- 單一職責原則
- 開閉原則
- 里氏替換原則
- 迪米特法則
- 接口隔離原則
- 依賴倒置原則