我們?yōu)槭裁匆褂密浖M(jìn)行部署,而不是直接使用代碼庫呢拾氓?使用軟件包部署意味著我們還需要?jiǎng)?chuàng)建額外的軟件包庫去管理軟件包。
原因在于:
1. 節(jié)省了代碼編譯的時(shí)間: 大型工程代碼往往需要較長(zhǎng)時(shí)間的編譯。使用已編譯好的軟件包市袖,而不是每次都重新進(jìn)行編譯能大大節(jié)約時(shí)間
2.? 便于傳輸:二進(jìn)制的軟件包,比多層次的文件傳輸起來更快烁涌。同樣節(jié)省了時(shí)間
3.? 安全 :軟件包可以使用hash 或數(shù)字簽名進(jìn)行校驗(yàn)苍碟。這樣防止了篡改和傳輸不完整的情況
4.? 元數(shù)據(jù):軟件包中也會(huì)包含,元數(shù)據(jù)來描述軟件包名稱撮执,產(chǎn)品說明微峰,版本號(hào),授權(quán)發(fā)行人抒钱,校驗(yàn)包蜓肆,以及軟件依賴。這些都是從代碼庫中難以獲得的谋币。 軟件包一般會(huì)使用額外的包存儲(chǔ)庫(software repository仗扬, 如Maven, PyPi, NPM 等) 和管理器(package manager) 進(jìn)行存儲(chǔ)管理。