Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Code Conflation: Considered Harmful?

by CountZero (Bishop)
on Sep 11, 2004 at 12:51 UTC ( #390263=note: print w/ replies, xml ) Need Help??


in reply to Code Conflation: Considered Harmful?

I can only speak from personal experience and what works for me does not necessarily work for someone else.

I have made a dynamic website (Apache2 + MySQL + (mod_)Perl). Template::Toolkit provides the templates; some additional "raw" perl left and right for the really tricky things and it all outputs XML, which is then send through an XSLT processor (part of Template::Toolkit), prettyfied by CSS and output as pure HTML to the user's browser.

The Template-layer builds the basics and is easy to modify; XSLT builds the bridge to HTML (if necessary this could be done "client"-side but not all browsers can do it and I don't like to send pure XML to the user. It is far too easy to parse that and "steal" the data); CSS is about the visual aspect.

I find this a nice and clean separation of concern.

With the same effort I could have Toolkit::Template output HTML, but that would be less "clean" as then HTML and logic would again be joined in one file.

With a little bit more effort I could perhaps have used a module to write the XML-output directly, well that is maybe something for the next release!

CountZero

"If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law


Comment on Re: Code Conflation: Considered Harmful?

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (10)
As of 2014-07-13 13:45 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (249 votes), past polls