Skip to Content (Press Enter)
OutSystems.com
Personal Edition
Community
Support
Training
Training
Online Training
Developer Schools
Boot Camps
Certifications
Tech Talks
Documentation
Documentation
Overview
ODC
O11
Forums
Forge
Get Involved
Get Involved
Jobs
Ideas
Members
Mentorship
User Groups
Platform
Platform
ODC
O11
Search in OutSystems
Log in
Get Started
Back to Forums
Sven Fortuin
1
Views
5
Comments
Generation process
Question
Hello all,
I had a few questions regarding the generation process.
I was wondering how the generation process from Outsystems works. Does this use code templates that are repated for certain parts of the meta-data? Or is there another mechanism?
And if templates are used, are there 2 generators (one for Java and one for .NET) or is there only one generator that uses different different code templates (i.e. Java or .NET)
Many thanks in advance!
João Heleno
MVP
www.outsystems.com/goto/outsystems-platform-architecture-overview
João Rosado
Staff
Hi Sven,
Part of it is template based, but in order to generate optimized code there is a lot of it that is not on the templates and it's "written" explicitly by C# or Java code based on the model and the inferences done by our optimizers.
The parts that are done in templating, yes there are 2 of each template one for each language. The generator is only one, but it is compiled in both C# and Java to run on both stacks.
Also there are some base dll/jars with already the base classes so common behaviors can be reused instead of generated many times.
Just out of curiosity, why are you asking? :)
Regards,
João Rosado
1 reply
13 Apr 2015
Show thread
Hide thread
Sven Fortuin
João Rosado
wrote:
Hi Sven,
Part of it is template based, but in order to generate optimized code there is a lot of it that is not on the templates and it's "written" explicitly by C# or Java code based on the model and the inferences done by our optimizers.
The parts that are done in templating, yes there are 2 of each template one for each language. The generator is only one, but it is compiled in both C# and Java to run on both stacks.
Also there are some base dll/jars with already the base classes so common behaviors can be reused instead of generated many times.
Just out of curiosity, why are you asking? :)
Regards,
João Rosado
Hello João,
Thank you very much for replying! I'm asking because I am recently getting into model driven software development. I have tried a few tools such as Genexus and Mendix, but overall I like Outystems the most. I realised that Outystems has a very rich documentation, but for some reason I am not able to find information on the generator, but maybe I'm looking at the wrong places. And I'm very eager to learn how the generation is realised.
But if I understand you correctly, there are in fact 2 instances of the generator, one compiled in C# and one in Java?
You also mention a optimizer, is this a different program or are the optimizer and generator one program? And are they performed at the same time, or does the generator first produce standard code through templates, after which additional (optimized) code is added by the optimizer?
After this I will have no further questions! :)
Regards,
Sven Fortuin
Sven Fortuin
Hello João,
Thank you very much for replying! I'm asking because I am recently getting into model driven software development. I have tried a few tools such as Genexus and Mendix, but overall I like Outystems the most. I realised that Outystems has a very rich documentation, but for some reason I am not able to find information on the generator, but maybe I'm looking at the wrong places. And I'm very eager to learn how the generation is realised.
But if I understand you correctly, there are in fact 2 instances of the generator, one compiled in C# and one in Java?
You also mention a optimizer, is this a different program or are the optimizer and generator one program? And are they performed at the same time, or does the generator first produce standard code through templates, after which additional (optimized) code is added by the optimizer?
After this I will have no further questions! :)
Regards,
Sven Fortuin
Sven Fortuin
Sorry for the double post, but it was intended a reply the first time.
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting.
See the full guidelines
Loading...