漫談移動開發中的組件化

組件化是什麼?

有人認爲這是一種比較高大上的技術(由於大公司都在搞);但我以爲這樣表達不太合適。
打個簡單的比方,一個公司剛開始有幾我的,你們可能分工也不那麼明確,有事就商量着來。公司慢慢發展愈來愈大,出於管理的須要,公司會陸續成立多個部門,人員就會分散到各個部門中。markdown

部門內部人的交流相對比較容易;隨着公司的發展壯大,跨部門溝通會變得愈來愈困難。組件化

那麼這裏的公司就至關於咱們的項目;而公司的部門就至關於咱們的組件,這裏的人員就至關於咱們的代碼或者功能。
經過這個類比,咱們很容易理解,組件化就是項目發展到必定規模時所必須經歷的一個開發模式;
所以,組件化方案應該適合項目發展的實際須要去因地制宜,而不是獨立於項目而存在的。url

對於組件化來講,主要須要解決兩大問題:router

1. 組件的拆分

2.組件間的通訊

關於組件化的實踐,筆者也在探索中,目前只能給出一些本身的理解,你們能夠看一下一些大廠輸出的實踐經驗,應該比較有說服力。
對於iOS平臺,私有cocoapods多是承載組件的不錯的選擇(在筆者最先的項目實踐中,各個組件被拆分紅子工程輸出.a靜態庫,集成到項目中)。
而組件間的通訊,業界採用的比較多的方案是經過router(即模塊註冊url的方式)。我我的認爲,router方案是一個比較穩妥的選擇,但毫不是組件化通訊的惟一方案。期待更多、更優秀的實踐可以涌現出來。開發

相關文章
相關標籤/搜索