最開始接觸組件化的思想是經過寫react。隨着作的項目愈來愈多,組件化的思想顯得愈來愈重要。react
關於如今項目的分層,我在以前的博客中有介紹過。組件化
在正常的業務場景下,咱們會對項目作這樣的分層。component
- 基礎組件
- 所謂基礎組件,咱們也能夠把它理解成widget,也就是元件。好比Input,Button,AutoComplete等等。它們能夠被用在任何地方。
- 業務組件
- 我理解的業務組件也就是component,這些組件由基礎組件構成,根據不一樣的業務場景須要,造成了帶有數據,帶有邏輯的業務組件。固然這些業務組件一樣能夠被抽象成一個可以被多個模塊組件使用的組件,好比頁面底部fix的footer,它可能集成了首頁模塊,用戶信息模塊,產品列表模塊的跳轉信息等,因此每一個模塊都須要擁有它。
- 模塊組件
- 這是咱們根據具體的業務需求具體出的一個一個的模塊,好比登陸,商品詳情頁等等。它是業務組件與基礎組件的集成。
因此回到最原始的問題,咱們爲何要作組件化,經過上面的這種拆分,咱們不難看出,組件化可讓咱們的代碼低耦合,咱們不用像傳統開發同樣把全部的東西都揉在一塊兒,從而極大的提升了咱們的開發效率。同時咱們避免了重複造輪子,提升了咱們的代碼質量,下降了維護的成本。開發