技術(shù)選型
- 目標(biāo)產(chǎn)品-產(chǎn)品特性搓侄、投資性技術(shù)
- 目標(biāo)團(tuán)隊(duì)-技術(shù)背景
- 技術(shù)本身-解決核心問題本谜、單元測(cè)試覆蓋率、維護(hù)團(tuán)隊(duì)傲醉、社區(qū)、優(yōu)點(diǎn)缺點(diǎn)
架構(gòu)設(shè)計(jì)
- 持續(xù)補(bǔ)充知識(shí)庫(kù)和工具庫(kù)
- 編碼之前先做結(jié)構(gòu)呻率、層次分析硬毕,整理出完整的架構(gòu)圖、類圖礼仗、時(shí)序圖
- 多溝通吐咳、集思廣益
- 多讀優(yōu)秀的源碼-學(xué)習(xí)優(yōu)秀的設(shè)計(jì)思想、API 設(shè)計(jì)元践、設(shè)計(jì)模式的最佳實(shí)踐
- 垂直領(lǐng)域和寬度領(lǐng)域兼顧
- 多端溝通韭脊,盡量保證雙端架構(gòu)一致性
- 不局限于己端,了解大前端技術(shù)更迭单旁,例如:區(qū)別于傳統(tǒng)的命令式 UI 更新方式沪羔,F(xiàn)lutter, React 的聲明式 UI 構(gòu)建思想,Kotlin 通過擴(kuò)展函數(shù)衍生出的聲明式 UI 框架 Compose慎恒,以及 SwiftUI 等
MVP
- 依賴倒置
- 抽象出 IView任内、IPresenter 接口撵渡,Presenter 持有并操作 View 和 Model
- IView 和 IPresenter 可以有多個(gè)實(shí)現(xiàn)
MVVM
- 數(shù)據(jù)驅(qū)動(dòng)
- VM 持有 Model,VM 提供一個(gè)個(gè) Action 供 View 調(diào)用來(lái)操作 Model死嗦,當(dāng)數(shù)據(jù)發(fā)生變化時(shí) VM 生成新的 UIState 暴露給 View趋距,View 根據(jù)新的 UIState 來(lái)更新 UI
- VM 不持有 View 的引用,VM 不直接操作