gradle編譯打包項(xiàng)目 gradle比maven好為什么用的人少?
gradle比maven好為什么用的人少?我們公司已經(jīng)在多個(gè)項(xiàng)目中使用了gradle,但是大多數(shù)項(xiàng)目仍然使用maven,估計(jì)將來會(huì)使用maven。為什么?這是因?yàn)楦窭聽柕臍⑹郑簞”臼侨绱藦?qiáng)大。早期的
gradle比maven好為什么用的人少?
我們公司已經(jīng)在多個(gè)項(xiàng)目中使用了gradle,但是大多數(shù)項(xiàng)目仍然使用maven,估計(jì)將來會(huì)使用maven。為什么?這是因?yàn)楦窭聽柕臍⑹郑簞”臼侨绱藦?qiáng)大。
早期的構(gòu)建是腳本化的,使用SH或bat將編譯、打包、部署和其他過程結(jié)合起來。后來,它演變成了用XML描述的ant工具,但它仍然可以編寫許多自定義任務(wù),調(diào)用本地命令進(jìn)行打包,并可以組合各種任務(wù),類似于bat。他們的共同特點(diǎn)是:靈活!您可以指定自己的依賴路徑來個(gè)性化打包過程。直到后來,Maven出現(xiàn)了,不同的項(xiàng)目只能通過不同的ArchType來構(gòu)建。每個(gè)項(xiàng)目類型的項(xiàng)目目錄都是固定的。如果沒有問題,一個(gè)package命令就可以了。沒有個(gè)性化的配置(除了mojo),約定勝于配置是它的理念!你只要明白pom.xml文件基本配置就足夠了。
Gradle結(jié)合了maven的優(yōu)點(diǎn),同時(shí)保留了腳本調(diào)用的特性。它往往給人們太多的選擇和機(jī)會(huì),但它會(huì)使項(xiàng)目(尤其是大型項(xiàng)目)的建設(shè)和配置復(fù)雜化。因此,新手很難掌握它的DSL語法,這是一個(gè)簡(jiǎn)化的groovy調(diào)用。有時(shí)他們不了解groovy語言及其語法,因此很難理解和編寫好的構(gòu)造腳本,而且學(xué)習(xí)成本很高。
許多老程序員不建議新手用IDE集成開發(fā)環(huán)境,而是用編輯器+編譯器,用命令行編譯,這個(gè)怎么看?
在人們的固有觀念中,用編輯器編譯器編寫代碼比用ide編寫代碼更好。也許吧,但效率還是需要考慮的。
作為一個(gè)新手,如果你在普通的編輯器中編寫代碼,你會(huì)非常困惑,你會(huì)在一開始就死。在強(qiáng)大IDE的支持下,它可以拄著拐杖快速前進(jìn)。
毫無疑問,使用ide將比普通編輯器更快,現(xiàn)在我們都使用框架來做項(xiàng)目。只使用編輯器是不合適的。在過去,編輯器更多地被用作函數(shù)式編程的工具。
當(dāng)您編寫代碼時(shí),其他人應(yīng)該能夠理解它并在文件、類和方法之間切換。Ide無疑提供了一個(gè)良好而高效的通信工具,但是Ide還不夠好。
因此,不要執(zhí)著于看似強(qiáng)大的編輯器,要用高效的工具來解決問題,要對(duì)每個(gè)環(huán)節(jié)的原理有更深的理解。