Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Terminology: Is DBIx::Class an ORM?

by LanX (Saint)
on Jun 02, 2021 at 15:14 UTC ( [id://11133427]=note: print w/replies, xml ) Need Help??


in reply to Terminology: Is DBIx::Class an ORM?

>   object <-> relational mapper.

OK I guess the point is in the bidirectional arrow.

Classical ORM is limited by the fact that it's mapping unidirectionally object language -> relational language.

Ribasushi's title seems to indicate that he can also map all relational semantic back, hence <->

Not sure if that kind of cleverness in the title is good marketing.

🤔

Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery

Replies are listed 'Best First'.
Re^2: Terminology: Is DBIx::Class an ORM?
by haukex (Archbishop) on Jun 02, 2021 at 17:26 UTC
    Classical ORM is limited by the fact that it's mapping unidirectionally object language -> relational language.

    I think I maybe see where you're coming from here. Are you talking about the automatic generation of a new OO API definition from an existing database schema, and the reverse operation of automatically generating a new database schema from an existing OO API? In that case, my answer would be: I thought several ORM frameworks are capable of that? It's been a while since I worked with them though so I'd have to look it up, which I don't have the time for right now, plus I'm not sure if I'm understanding your question correctly...?

      > Are you talking about the automatic generation of a new OO API definition from an existing database schema, and the reverse operation of automatically generating a new database schema from an existing OO API?

      No.

      The fundamental definition of an ORM I found is to hold data model inside an object system which is made persistent with a DB server.

      That means mapping in one direction and the "data language" is limited to the semantics of the OOP model.

      But that's a one way street.

      Like with "Active Record".

      > I thought several ORM frameworks are capable of that?

      That would surprise me.

      Cheers Rolf
      (addicted to the Perl Programming Language :)
      Wikisyntax for the Monastery

        The fundamental definition of an ORM I found is to hold data model inside an object system which is made persistent with a DB server. That means mapping in one direction and the "data language" is limited to the semantics of the OOP model.

        As you know, academic discussions about excact terminology are not my strong suit, so I don't think I can help much there...

        > I thought several ORM frameworks are capable of that?
        That would surprise me.

        I checked, Hibernate is (one of) the framework(s) I worked with years ago, and there are tools to both generate class definitions from the database and generate database definitions from a class structure (I assume the former is less common).

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11133427]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (4)
As of 2024-03-29 05:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found