1. 程式人生 > >1 元件化的瞭解

1 元件化的瞭解

元件化

概念:講一個單一的工程的專案,分解成為各個獨立的元件,然後按照某一種方式,任意的組織成一個擁有完整業務邏輯的工程

優勢

  • 元件的獨立–> 獨立編寫,獨立編譯,獨立執行,獨立測試
  • 資源的重用–> 功能程式碼的複用
  • 高效的迭代–> 快速的增刪模組

元件化的分裂

1 基礎元件(基礎的功能使用)

  • 基本的配置–>(1 常量 2 巨集 等等)
  • 分類 —>(各種系統類的擴充套件)
  • 網路 —>網路(對AFN的封裝 對SDWebImage的封裝)
  • 工具 —>(一些常用的工具類,日期時間的處理,檔案處理,裝置資訊等等)

2功能元件

  • 控制元件 --> (封裝的控制元件,輪播圖,彈出選擇框等等,UI相關)
  • 功能 --> (音訊處理,斷點下載無UI相關展示)

3 業務元件

  • 業務線1
  • 業務線2
  • ……

總結:
功能元件和基礎元件之間儘量不要產生專案依賴關係
業務元件和業務元件不宜產生依賴

元件以什麼樣的形式存在

  • 元件內部 --> 根據對應的設計模式劃分資料夾結構
  • 元件形式 --> 每個元件形式都是以pod庫形式的存在
  • 元件測試 --> 單獨的測試工程

以怎麼樣的形式整合各個元件

以pods的形式安裝各個元件遠端私有庫

元件之間是如何進行通訊的

  • 披露公開的API
  • 通過中介軟體的中轉

元件分離每個組建的難點

  • 就是解耦