過去建站一般都自定義開發,這需要技術性很高,而且代碼不容易復用,別人也不容易維護,對於CMS來說,實在是沒有必要自定義開發,因為CMS的基本功能並不多,很多功能都應該被復用。而joomla是一個完整的CMS,而且它最大特點是擴展性很好。
為什麼說joomla擴展性好?你只要到joomla的官方網上找一找組件安裝包,你就會看到有上千個組件安裝可用,它們都實現各自的功能。如果你的CMS需要增加一個功能,在開發之前可先找一下安裝包,這會省去不少功夫。有很多人為joomla開發組件安裝包,那也是因為joomla的結構良好與安裝包容易開發。joomla默認的功能實現並不多,joomla更像一個程序基層,所有程序都在這個基層上建立,一個一個的小程序就架構出一個功能性很強的網站。就算不使用第三方安裝包,把自己常用的功能做成一個組件安裝包,也可以很好地復用代碼,讓開發不再重裝。從使用者角度,joomla就像一個桌面系統,它可以安裝各種應用軟件來豐富網站的功能,讓人感覺是那麼的好玩。
joomla的結構良好,所以只要熟練joomla,要維護一個joomla站都很容易。自定義寫的東西就算再好,維護性始終是個問題,我想沒有老板要一套只有一個程序員能看得懂的系統。
對於CMS、BBS等中小型網站架建,自定義開發已經不是主流,新時代要求網站需要更高的開發效率,所以基於完整系統的開發將會占有大部分的市場。目前國內已經越來越多網站開發公司基於現有的開源系統進行二次開發,因為這樣意味著產品會有更高的質量與開發效率。
國內也有很多CMS,它們都很好用,不比joomla要差。比如dedecms是全靜態,joomla目前還不能做全靜態網站,所以訪問效率比不上dedecms。雖然dedecms也有模塊安裝,但不見得有人為dedecms做模塊,我沒用過dedecms,不過估計是因為dedecms的結構不夠通用化或者國內程序員沒有為開源寫安裝包的習慣。反正老外已經架建了那麼好的系統,為什麼不拿來用一下?
一個WEB程序員的價值,不完全在於他懂很多技術,而在於他是否能夠在滿足客戶需求的情況下更快地完成項目。