[cgiapp] Re: Class::MOP? Really?

Peter Karman peter at peknet.com
Sat Oct 20 23:25:10 EDT 2007



Daniel Sterling wrote on 10/20/07 9:26 PM:
> Peter Karman wrote:
>> RDBO++
> So here everybody is saying they like Rose better, and I'm learning DBIC :)
> 
> So, I'll ask, what do you think? How is Rose better than DBIC or vice 
> versa?

I think it comes down to aesthetics, really. By that I mean that the RDBO API 
design matched more closely the way I would do things if I were writing an ORM. 
I found I grokked the "RDBO way" more easily.

> 
> The most comprehensive comparison I found is at 
> http://osdir.com/ml/lang.perl.modules.dbi.rose-db-object/2006-06/msg00021.html 
> , which is a post from the Rose author.

see also http://www.gossamer-threads.com/lists/catalyst/users/3095

> 
> I glanced at Rose's docs and they do look very well done, so that's 
> definitely a plus. The syntax looks clean, as well.
> 
> Resultset chaining seems to be DBIC's killer feature.
> 

I think Matt Trout (chief DBIC author) would agree.

> RDBO is faster but definitely less extensible... performance was a 
> design goal for RDBO, which eschews simplicity and extensibility for it. 
> DBIC's codebase is definitely more modular and extensible.
> 

I guess it depends on what you mean by extensible. I have found that simply 
subclassing things (which is the RDBO recommended approach) gives me the 
extensibility I need.

> IMO I think if you want speed, use DBI directly, right? :) But I suppose 
> if the effort has been made and Rose works, I can't fault someone for 
> choosing it on speed.
> 
> RDBO may have a better schema loader ... but you should just 
> auto-generate once and then manually maintain in any case...
> 

agreed.

> So -- both good modules. Did I miss anything? Anybody have strong 
> opinions or other comments?
> 

I actually plan to spend some more time with DBIC soon for the purposes of a 
project I'm working on, so I may develop more opinions/taste for one or the 
other. But so far, RDBO appealed to me more at a "gut level" than at a technical 
one. It did want I wanted, I understood the docs and examples (which I find to 
be at least as important as any feature set), and John has been a very good 
project maintainer IME.

pek


-- 
Peter Karman  .  http://peknet.com/  .  peter at peknet.com


More information about the cgiapp mailing list