2016-07-12 8 views

Antwort

3

Es steht für "Domain Specific Language," weitere Informationen on Wikipedia gefunden werden kann.

5

Einfach, es steht für "Domain Specific Language". IMO, im Großen und Ganzen, bietet Ihnen DSL eine spezielle Möglichkeit, Ihre Build-Skripte zu erstellen. Genauer gesagt, es ist eine pluginbasierte Sache, die eine Möglichkeit zum Einrichten Ihres Buildskripts definiert, indem Bausteine ​​ definiert in verschiedenen Plugins verwendet werden.

Zum Beispiel, Gradle Skripte in der Regel beruht auf die Verwendung von Methoden (auch als Bausteine ​​bekannt), wobei eine Schließung als einziger Parameter. Und du schreibst es so auf;

apply plugin: 'com.android.library' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.3" 
    ... 

    defaultConfig { 
     minSdkVersion 19 
     targetSdkVersion 25 

So oben haben wir die 'android {...}' Baustein (oder vordefinierte Aufgabe - bitte Example.89 here) nutzen wollte setzen einige Android-Eigenschaften für unsere bauen. Aber ich weiß nicht, welche Bausteine ​​ich am Anfang einfügen kann. Also, ich brauche einen Weg, um die von irgendwo nachzuschauen. Hier kommen DSL und Plugins zusammen ins Spiel. Ich kann auf das Plugin DSL gehen, um herauszufinden, welche Bausteine ​​darin definiert sind, oder was dieses Plugin besonders macht. Das wären die Dinge, die die DSL des jeweiligen Plugins definieren.

Um zu verstehen, wie DSL funktioniert, müssen Sie wissen, wie 'Delegierte' in groovy arbeiten. This könnte ziemlich viel helfen.

Eine letzte Sache, die Sie vielleicht fragen, ist, wie ein Gradle.script ausgewertet wird. Sie können einige nützliche Informationen über here finden.