The most frequent critique that we receive about the Rebel is related to the preserved sections in the generated Java source code.
The preserved sections are structured comments that enable customization of the Java source code generated from the model. As their name implies, whatever you write between the beginning and the end of this block section, will be preserved during the successive generations.
"It pollutes Java code. It is quirky, strange. Makes the code less readable."
It took us some time to understand this perspective. Looking only from the code point of view, it does look ugly and strange, indeed.
However, when you start thinking in terms of concepts and abstractions -from the modeling perspective, things change completely.
The generated Java code becomes a consequence of an idea, already represented by the UML model of the project, and loses the significance of the most relevant communication artifact.
Instead, now there is a visual UML model, a live map of the solution, and it gives more advanced possibilities to get started with the project and the problem it solves.
You can read more about preserved sections in our Getting Started Guide.