Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Re: Appropriate amount of abstraction

by FoxtrotUniform (Prior)
on Nov 14, 2004 at 23:41 UTC ( #407738=note: print w/replies, xml ) Need Help??

in reply to Appropriate amount of abstraction

It Depends(tm).

If your primary concern is "getting it done", using a high level of abstraction (for instance, Class::DBI rather than plain DBI and hand-written utility functions) will probably result in cleaner, more easily maintained code... as long as the abstraction you pick is the right one. On the other hand, if you're more interested in learning how something works, thick layers of abstraction can get in your way.

From a pedagogical standpoint, I don't know whether it's better to start by teaching a high level of abstraction and moving to lower and lower levels, or to start with the low-level basics and build on those.

Yours in pedantry,
F o x t r o t U n i f o r m

"Anything you put in comments is not tested and easily goes out of date." -- tye

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://407738]
[msh210]: I think I just found a lie in perldoc.
[msh210]: warn: "If the last element of LIST does not end in a newline, it appends the same file/line number text as die does."
[msh210]: perl -e'warn "test$/", "" '
[msh210]: doesn't append anything.
[msh210]: It should say "If the last nonempty element of LIST" or "If the string thus to be printed does not end in a newline""
[msh210]: Am I wrong?
[shmem]: no. You're right.
[msh210]: About time... last time I was right was... I don't even remember when.
[shmem]: perl -e 'warn "test$/", ^@^ '
[Eily]: well, at least it's right about warn doing the same thing as die :)

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (9)
As of 2017-04-24 12:37 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (439 votes). Check out past polls.