An important factor that may impact your decision to adopt CDL is obviously how well it integrates into your development environments.
We have done lots of work to ensure that the integration into Development Environments are IDE agnostic, and can emit code to the relevant folders in your source code tree.
Settings around Code Creation:
The CDL file includes a number of settings that makes integration into your development environment easier, as can be seen here:
Master Output Path:
This would be the path where all of the code files gets placed if you only set this single setting. It is the fallback or default path for all Code Files. Typically useful if you do smaller projects but this options will not be too useful on its own as source control repositories are normally vast tree based structures.
Other Output Paths:
You can override this Master Output Path with a different path for each of the Languages that is supported by CDL. In the exmaple below, CDL will emit the c# Code files to the .NET Backend subfolder, and the swift files will be placed in the iOS UI sub directory.
There is no need for all the folders to be sub folders of the Master Output Path – so CDL can fit into any existing code structure.
Versioning of the CDL File.
Another important aspect in using CDL is obviously that matter of properly versioning the CDL file in your existing source control repository. CDL makes use of a native XML based file format which means that one can easily version / compare/ branch / merge etc. of CDL files.