更新時間:2023-11-03 來源:黑馬程序員 瀏覽量:
所謂分模塊設(shè)計,顧名思義指的就是我們在設(shè)計一個 Java 項目的時候,將一個 Java 項目拆分成多個模塊進行開發(fā)。
如果項目不分模塊,也就意味著所有的業(yè)務(wù)代碼是不是都寫在這一個 Java 項目當中。隨著這個項目的業(yè)務(wù)擴張,項目當中的業(yè)務(wù)功能可能會越來越多。
假如我們開發(fā)的是一個大型的電商項目,里面可能就包括了商品模塊的功能、搜索模塊的功能、購物車模塊、訂單模塊、用戶中心等等。這些所有的業(yè)務(wù)代碼我們都在一個 Java 項目當中編寫。
此時大家可以試想一下,假如我們開發(fā)的是一個大型的電商網(wǎng)站,這個項目組至少幾十號甚至幾百號開發(fā)人員,這些開發(fā)人員全部操作這一個 Java 項目。此時大家就會發(fā)現(xiàn)我們項目管理和維護起來將會非常的困難。而且大家再來看,假如在我們的項目當中,我們自己定義了一些通用的工具類以及通用的組件,而公司還有其他的項目組,其他項目組也想使用我們所封裝的這些組件和工具類,其實是非常不方便的。因為 Java 項目當中包含了當前項目的所有業(yè)務(wù)代碼,所以就造成了這里面所封裝的一些組件會難以復(fù)用。
總結(jié)起來,主要兩點問題:不方便項目的維護和管理、項目中的通用組件難以復(fù)用。
分模塊設(shè)計在進行項目設(shè)計階段,就可以將一個大的項目拆分成若干個模塊,每一個模塊都是獨立的。
比如我們可以將商品的相關(guān)功能放在商品模塊當中,搜索的相關(guān)業(yè)務(wù)功能我都封裝在搜索模塊當中,還有像購物車模塊、訂單模塊。而為了組件的復(fù)用,我們也可以將項目當中的實體類、工具類以及我們定義的通用的組件都單獨的抽取到一個模塊當中。
如果當前這個模塊,比如訂單模塊需要用到這些實體類以及工具類或者這些通用組件,此時直接在訂單模塊當中引入工具類的坐標就可以了。這樣我們就將一個項目拆分成了若干個模塊兒,這就是分模塊兒設(shè)計。分模塊兒設(shè)計之后,大家再來看。我們在進行項目管理的時候,我就可以幾個人一組,幾個人來負責(zé)訂單模塊兒,另外幾個人來負責(zé)購物車模塊兒,這樣更加便于項目的管理以及項目的后期維護。
而且分模塊設(shè)計之后,如果我們需要用到另外一個模塊的功能,我們直接依賴模塊就可以了。比如商品模塊、搜索模塊、購物車訂單模塊都需要依賴于通用組件當中封裝的一些工具類,我只需要引入通用組件的坐標就可以了。
分模塊設(shè)計就是將項目按照功能/結(jié)構(gòu)拆分成若干個子模塊,方便項目的管理維護、拓展,也方便模塊鍵的相互調(diào)用、資源共享。