初識組件化開發
組件化開發.png
公司最近在做的工程采用組件化開發的架構模式,那什么是組件化開發呢?顧名思義,組件就是把之前都放在主工程里寫的東西,按一定的依據拆分成一個個小的組件,再以三方庫的形式拉取到主工程中,但在開發組件時要注意各個組件之間的解耦與通信。
組件化的優點
1、組件可獨立運行,提高代碼復用性;
2、減少因協作開發而導致的代碼沖突問題,提高開發效率;
組件拆分
一個工程拆分成組件時所選取的顆粒度不同,則所拆分的組件也就不同,顆粒度過細則組件拆分過于分散,顆粒度太大則組件過于臃腫,至于顆粒度的選取則沒有嚴格的標準,因工程而異。
目前所做工程采用的拆分方式如下:
① 基礎組件:類似于針對Foundation的一些工具類、分類等;
② 功能組件:自定義相冊、圖片輪播器、下載功能、錄音、自定義提示框等特定功能的組件;
③ 定制組件:針對app特定風格的定制UI庫;
④ 業務組件:如登錄注冊、下單等具體業務功能;
組件的存在形式
組件就是以類似于第三方庫的形式存在的,采用的cocoapods私有庫的形式進行創建和管理的;
組件的創建與使用
- 采用pod lib create創建工程;
- 在Pods->Development Pods->Project Name->Classes下編寫代碼;
- 編寫.podspec文件,驗證并提交至私有repo庫;
- 在使用組件的工程中,采用cocoapods拉取私有庫即可將組件導入;
更多關于iOS組件化開發的文章: