Welcome!

This community is for professionals and enthusiasts of the Genio platform.
Share your questions and challenges, and help your partners!

2

1
Rodrigo Serafim
On 7/19/19, 2:59 PM

The models of Genio specify what you want and not how you want it. This makes the generator implementation free to optimize the code as much as any coder can, in the same way that a compiler can optimize the high level code into CPU registers because the programming language requires nothing of low level specifications.

This turns out to provide better optimization more often than not. Not every programmer is going to be an expert at optimizing code, so if you have a team of 10 people all collaborating on a big project the probability of having un-optimized parts of your application is rather large. If fact you will be lucky to even have development time allocated for that task.

In model driven development we template solutions and reuse them. When a better solution comes up we just replace the old template with a new one using the improved code. This ensures the whole team is using code as optimized as it was possible to produce by all the developers.

Generalization also does not need to imply one size fits all. If relevant parameters are discovered there is nothing stopping the generator from using one solution when a certain parameter value is used and another solution with another value. Basically in model driven development you are already writing specific code for specific goals from the get go, the only difference is that you are also trying to make them reusable in as many combinations as possible.

When graphic engines came along all the guys that coded custom polygon triangulation assembly routines scoffed at the performance. But the reality was that those engines were just a collection of all those optimized routines ready to use and with parameters that helped the engine select the best option for each task. This proves to be a better development strategy every time: don't develop the problem, develop the engine to solve a class of problems.


Keep Informed

About This Community

This platform is for beginners and experts willing to share their Genio knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers. Read Guidelines

Question tools

7 follower(s)

Stats

Asked: 2/14/19, 5:10 PM
Seen: 106 times
Last updated: 9/26/19, 5:03 PM