Terminology
Gradle has a wealth of terminology. Here you can find the terms Nokee plugins align around.
Dimension
Represent a configuration group that hold a meaning. For example the architecture and operating system are both dimensions of a native component. All the dimensions are used to create the variants of a component.
Entry point
Represent the capability of how a component is used. A component can be used as a library, as an application, as a test suite, as a device driver, etc. For example, the JNI Library Plugin provides the library entry point capability to the project it is applied.
Implementation Language
Represent the capability of how a component is implemented. A component can be implemented in C++, C, Objective-C, Objective-C++, Swift, etc. or as a mix of those languages. For example, the C++ Language Plugin provide the C++ language implementation capability to the project it is applied.
Plugin Identification Triplet
Represent the capability combination of a plugin across the language, runtime and entry point dimensions. Some combinations are also subject to implicit limitation with regards to mixing them with other plugins. The triplet offers a simple and concise way of understanding when and how a plugin can be used. Each segment of the triplet act as an opinion for the project’s capabilities. Head over to the Anatomy of a Nokee Plugin chapter to learn more..
Runtime
Represent the capability of how a component is targeting an environment. A component can target Java Native Interface (JNI), Windows API, iOS, Android, etc. For example, the JNI Library Plugin provides the JNI runtime capability to the project it is applied.