[Lazarus] [ANN] Xavier for XML — Compatible with FPC and Delphi

Michael Van Canneyt michael at freepascal.org
Sat Sep 23 13:36:51 CEST 2017

On Sat, 23 Sep 2017, Graeme Geldenhuys via Lazarus wrote:

> On 2017-09-21 04:06, Marcos Douglas B. Santos via Lazarus wrote:
>> Nah... most of them know nothing about true OOP.
>> They believe that an object is a "record" with getters and setters... 
> anyway.
> If I understand you correctly... referring to Java developers, then that 
> is a totally wrong generalisation.
>> As you said, each his own style. What is more important is keeping
>> this excellent community united, around that great language called
>> Object Pascal.
> I love Object Pascal too, and have a real soft spot for it (and always 
> will). But G*D damn, Java is brilliant too. Not just Java the language, 
> but the millions of frameworks and tools built around it too (JPA, 
> Spring Boot, Jenkins, Maven etc). Also the understated Java Annotations 
> are unbelievably powerful and can (and does) reduce the amount of 
> boilerplate code tremendously(*).
> FPC doesn't even cover the most basic of things - no decent debugger 
> that can handle all the Object Pascal language features. :-/

Of course not. FPC is not a debugger, it is a compiler.

But if you put the combined resources of IBM and Oracle at our disposal,
we'll quickly catch up.

> * Take a gander at how much Java Annotations reduced boiler plate code
>   using JPA in EJB 3.0 and later vs EJB 2.1 which didn't use
>   annotations.
> http://web.archive.org/web/20100731223045/http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html

That's actually a step backwards.
Because it breaks the separation of object and storage.

Good for some quick and dirty prototyping, but a potential disaster in the long run.

It suffices that the DBA decides to move (part of) the data for storage, and
you're dead...

I have to manage an API where the same data can meanwhile come from 1 to 4 different
kinds of databases, depending on some (for all practical purposes) random parameter. 
Luckily, at the start I separated storage and object.


More information about the Lazarus mailing list