Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re^2: Modules that significantly contribute to Laziness

by Whitehawke (Pilgrim)
on May 24, 2005 at 15:58 UTC ( #460055=note: print w/replies, xml ) Need Help??

in reply to Re: Modules that significantly contribute to Laziness
in thread Modules that significantly contribute to Laziness

Well, as I mentioned, I had already decided to use Template Toolkit and Log::Log4Perl, so I'm glad you recommend them.

DBI is lower level than I'm looking is pretty much the lowest level at which it is sane to write DB code in Perl, and my goal is to be well above that level. (To go any lower you'd need to shell out or write XS to a driver--which is effectively what the DBD modules do.) The reason I chose Tangram is because it means that, for a certain category of DB interactions (object persistence) I can completely ignore the DB.

Thanks for the reminder about Class::DBI; I'll compare/contrast it against Tangram.

Regarding CGI::Application--what is your experience with it in terms of user interface speed? That is going to be a major requirement of this project...the interface must feel as snappy as a locally-running application, or it will be rejected out of hand.

  • Comment on Re^2: Modules that significantly contribute to Laziness

Replies are listed 'Best First'.
Re^3: Modules that significantly contribute to Laziness
by perrin (Chancellor) on May 24, 2005 at 16:41 UTC
    CGI::Application is very simple and light. It will not slow down your project. Database access is the most likely place you will see performance problems.
Re^3: Modules that significantly contribute to Laziness
by dragonchild (Archbishop) on May 24, 2005 at 17:07 UTC
    I'm echoing perrin here - DB access is typically 80-90% of the time to process an HTML request. C::A is actually nicely optimized and is very light. If you're worried about speed, I'd seriously look at CDBI over Tangram - I think it's lighter, which may improve performance somewhat.

    • In general, if you think something isn't in Perl, try it out, because it usually is. :-)
    • "What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against?"

      Saying CDBI is more lightweight than Tangram, is like saying that DBI is more lightweight than CDBI.

      Of course it's more lightweight, but it doesn't provide any real abstractions. CDBI is just another SQL macro library; it just happens to be the most actively developed. It's a very good alternative to raw DBI.

      There is a large class of problems for which Tangram can solve easily, and CDBI just has no solution at all. For instance, with Tangram it is very simple to build up "complex" queries without resorting to hacking SQL. Likewise, if you're retrofitting to existing database schemas, Tangram can seem awkward and inept.

      However, for building large scale database driven applications from scratch, my personal experience would say that using Tangram in concert with Class::Tangram gives you the most flexibility and adaptability of any currently available database abstraction for Perl 5.

      $h=$ENV{HOME};my@q=split/\n\n/,`cat $h/.quotes`;$s="$h/." ."signature";$t=`cat $s`;print$t,"\n",$q[rand($#q)],"\n";
        Instead of defending Tangram, just point to

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://460055]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (4)
As of 2017-06-25 00:38 GMT
Find Nodes?
    Voting Booth?
    How many monitors do you use while coding?

    Results (563 votes). Check out past polls.