Android NDKドキュメントを読んでいますが、 "DSL"があります。正確には何なのかわかりません。 "DSL"のフルネームを教えていただけますか?
ここにドキュメント: http://tools.Android.com/tech-docs/new-build-system/gradle-experimental#TOC-Samples
単に、それは「ドメイン固有言語」の略です。 IMOは、gradleのコンテキストでは、gradle固有の方法でビルドスクリプトを作成できます。より正確には、これはプラグインベースのビルドシステムであり、(主に)ビルディングブロックを使用してビルドスクリプトをセットアップする方法を定義しますプラグインで定義されます。
たとえば、gradleスクリプトは通常、唯一のパラメーターとしてクロージャーを使用するメソッド(ビルディングブロックとも呼ばれます)を使用することに依存しています。そして、あなたはそれをこのように書き留めます。
apply plugin: 'com.Android.library'
Android {
compileSdkVersion 25
buildToolsVersion "25.0.3"
...
defaultConfig {
minSdkVersion 19
targetSdkVersion 25
したがって、上記では「Android {...}」を使用したいと考えていましたビルディングブロック(または事前定義されたtask-例を参照してください89 ここに )いくつかのAndroid=私たちのビルドのプロパティを設定します。しかし、最初にどのビルディングブロックをそこに入れることができるのか分かりません。それで、私はどこかからそれらを検索する方法です。ここで、gradle DSLとプラグインが連携します。その特定のプラグインの ページ に移動して、定義されているビルディングブロックの種類を確認できますプラグインの機能を定義するものは、(gradle)DSLと呼ばれる高水準言語の形でプラグインの機能を定義するものです。
DSLがどのように機能するかを理解するには、「デリゲート」がGroovyでどのように機能するかを知る必要があります。 これ はかなり役に立ちます。
最後に1つ気になるのは、gradle.scriptがどのように評価されるかです。 こちら で役立つ情報を見つけることができます。
それは「ドメイン固有言語」の略で、詳細は Wikipediaで にあります。