Expand my Community achievements bar.

development of enterprise applications

Avatar

Former Community Member

Hello

What are your advises on using model driven  development in developing enterprise applications. LiveCycle  Data Services looks very promising, I have found numerous  tutorials/videos that shows how fast an application can be build by  having methods/functions auto-generated.

What are the best-practices, is it good/bad to use those  auto-generated methods, they can really save a lot of time.

All suggestions are welcome, also if you know some existing  blog/discussion please let me know.


Thanx
2 Replies

Avatar

Former Community Member

Any generated code is going to follow a specific pattern, and is not a one size fits all solution. Depending on the application, it is important that developers have the ability to customize the generated code to suit their needs. With Data Services, not only can you generate code, you can customize the generated code.

There are a couple of options to customize code:

1. Modify the template: All generated code is backed by a template (we use Freemarker). You can modify the template to fit your application design pattern. The limitation with this approach is that you cannot add/remove templates.

2. Plugin to Modeling plugin: Developers can extend the modeling plugin, and hence the code generation capability. With this approach, developers have full control on what gets generated.

Note: You need to have a good understanding of Fiber core and it's APIs to successful control code generation. These API are in Java and provides you a run-time representation of the data model.

Model driven form follows the same pattern. It is unlikely that you like the generated code as is - I would recommending modifying the template (especially the look and feel) to suit your application design.

However with some application all forms may not have the same consistent look and feel. In such cases, the generated code may be a good starting point, but may require context specific customization.

One of the limitations with LCDS code generation today is that we don't support multiple templates in an application. Developers cannot choose a different template for each entity. We may add this capability in the future. However, if this is really important, you can always extend the plugin to offer this functionality.

Hopefully this provides the information you were looking for.

Thanks,

-Anil

Avatar

Former Community Member

Thank you very much Anil for those information.

Regards,

Adnan