FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » ORMs comparisons/complaints.
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: ORMs comparisons/complaints. [message #184413 is a reply to message #184321] Mon, 30 December 2013 21:36 Go to previous messageGo to previous message
Arved Sandstrom is currently offline  Arved Sandstrom
Messages: 9
Registered: December 2013
Karma:
Junior Member
On 12/22/2013 08:11 PM, Kevin McMurtrie wrote:
> In article <%JGtu.29103$Wm1(dot)26832(at)fx17(dot)iad>,
> Daniel Pitts <newsgroup(dot)nospam(at)virtualinfinity(dot)net> wrote:
>
>> Hey everyone,
>>
>> This is cross-posted to cl.java.programmer and cl.php.
>>
>> I've been doing some thinking about my experiences with various ORMs,
>> both positive and negative. I find that I often stretch systems to
>> there limits, and end up doing a lot of meta-programming to solve
>> problems that I've always felt should have been solved by the core
>> libraries. Mostly to follow DRY and KISS principals in the core
>> business code.
>>
>> I'm curious if others' have found the same things I have, or if they've
>> been satisfied doing things other ways, and if so what ORMs they use.
>>
>> I've had experience with the following Java ORMs:
>> * Hibernate (version 3, using Annotations for instance)
>> * Ibatis (many years ago, don't remember the version. around 2006)
>> * Straight JDBC. Not exactly an ORM :-)
>>
>> And then one non-Java ORM: Doctrine, which is modeled after Hibernate,
>> including most of its flaws, but missing some of its features.
>>
>>
>> So, my question to the groups, what ORMs have you used, and what did you
>> like and hate about each of them? I'm not trying to start a flame war,
>> so please keep it to personal experiences with projects which used them.
>>
>> I'm interested in use-cases from simple small one-off applications to
>> complex enterprise-level systems, and highly-scalable systems.
>>
>> Please include details like "it's easier to maintain <x> type of changes
>> with our approach, but <y> is very difficult" etc...
>>
>> Thanks for your consideration,
>> Daniel.
>
> I don't like ORM utilities much because they rarely model all of the
> complex relationships and behaviors, for better or worse, that may exist
> in SQL. You end up spending at least as much time working around those
> limitations as time initially saved.
>
> Simpler data works fine in ORM, but simpler data is isn't the complex
> task ORM tries to solve.
>
> That leaves many ORM utilities as too enormous, too complex, too slow,
> and still a poor fit for SQL. I see ORM as potentially being an
> excellent fit for document stores but I have little experience with
> those.
>
To echo Arne's comment, an "excellent fit for document stores"??? How
so? If the document is well-modeled by a relational calculus, why model
it as a document? The current notion of a document is that of groups of
semi-structured or non-structured data that don't necessarily adhere to
any schema. Which is non-relational. There are fundamental differences here.

I haven't encountered the problems you have, apparently, with ORMs. Data
is complex, relational data is obviously just as complex, and any method
of querying or manipulating real relational data is often hard. And
considering major ORMs (not just Java), and the amount of educated
effort that has gone into them, there are not many people who are
well-advised to routinely use SQL directly if they have other
options...not unless they are RDBMS specialists, and that's what they do
for a living. Are you one? I'm not.

I'll say this: Java language limitations have hurt Java ORMs, and it's
not the fault of the ORM developers: I know a few of them. The JPA
Criteria API is a sign of the apocalypse. It's unfortunately informed by
folks who are both struggling with Java limitations and have experience
with native implementations. C# LINQ and Scala Squeryl are conceptually
light years ahead of Java ORMs.

AHS
--
When a true genius appears, you can know him by this sign:
that all the dunces are in a confederacy against him.
-- Jonathan Swift
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: tracking file usage
Next Topic: Processing accented characters submitted from forms
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Mon Nov 25 22:08:39 GMT 2024

Total time taken to generate the page: 0.09960 seconds