鍍金池/ 教程/ Android/ Groovy 介紹
Groovy 介紹
腳本類、文件 I/O 和 XML 操作
更多
一些前提知識
Gradle 工作流程
基本組件
題外話
總結(jié)
Gradle 編程模型及 API 實(shí)例詳解
閉包
Gradle 介紹
閑言構(gòu)建
Groovy 中的數(shù)據(jù)類型

Groovy 介紹

Groovy 是一種動態(tài)語言。這種語言比較有特點(diǎn),它和 Java 一樣,也運(yùn)行于 Java 虛擬機(jī)中。恩??對頭,簡單粗暴點(diǎn)兒看,你可以認(rèn)為 Groovy 擴(kuò)展了 Java 語言。比如,Groovy 對自己的定義就是:Groovy 是在 java 平臺上的、 具有像 Python, Ruby 和 Smalltalk 語言特性的靈活動態(tài)語言, Groovy 保證了這些特性像 Java 語法一樣被 Java 開發(fā)者使用。

除了語言和 Java 相通外,Groovy 有時(shí)候又像一種腳本語言。前文也提到過,當(dāng)我執(zhí)行 Groovy 腳本時(shí),Groovy 會先將其編譯成 Java 類字節(jié)碼,然后通過 Jvm 來執(zhí)行這個(gè) Java 類。圖 1 展示了 Java、Groovy 和 Jvm 之間的關(guān)系。

http://wiki.jikexueyuan.com/project/deep-android-gradle/images/1.jpg" alt="" />

實(shí)際上,由于 Groovy Code 在真正執(zhí)行的時(shí)候已經(jīng)變成了 Java 字節(jié)碼,所以 JVM 根本不知道自己運(yùn)行的是 Groovy 代碼。

下面我們將介紹 Groovy。由于此文的主要目的是 Gradle,所以我們不會過多討論 Groovy 中細(xì)枝末節(jié)的東西,而是把知識點(diǎn)集中在以后和 Gradle 打交道時(shí)一些常用的地方上。

Groovy 開發(fā)環(huán)境

在學(xué)習(xí)本節(jié)的時(shí)候,最好部署一下 Groovy 開發(fā)環(huán)境。根據(jù) Groovy 官網(wǎng)的介紹(http://www.groovy-lang.org/download.html#gvm),部署 Groovy 開發(fā)環(huán)境非常簡單,在 Ubuntu 或者 cygwin 之類的地方:

  • curl -s get.gvmtool.net | bash
  • source "$HOME/.gvm/bin/gvm-init.sh"
  • gvm install groovy
  • 執(zhí)行完最后一步,Groovy 就下載并安裝了。圖 1 是安裝時(shí)候的示意圖

http://wiki.jikexueyuan.com/project/deep-android-gradle/images/2.jpg" alt="" />

然后,創(chuàng)建一個(gè) test.groovy 文件,里邊只有一行代碼:

println "hello groovy"

  • 執(zhí)行 groovy test.groovy,輸出結(jié)果如圖 2 所示:

http://wiki.jikexueyuan.com/project/deep-android-gradle/images/3.jpg" alt="" />

親們,必須要完成上面的操作啊。做完后,有什么感覺和體會?

最大的感覺可能就是 groovy 和 shell 腳本,或者 python 好類似。

另外,除了可以直接使用 JDK 之外,Groovy 還有一套 GDK,網(wǎng)址是 http://www.groovy-lang.org/api.html

說實(shí)話,看了這么多家 API 文檔,還是 Google 的 Android API 文檔做得好。其頁面中右上角有一個(gè)搜索欄,在里邊輸入一些關(guān)鍵字,瞬間就能列出候選類,相關(guān)文檔,方便得不得了啊.....

上一篇:基本組件下一篇:閉包