in reply to Re^2: Hierarchy of code reuse by flexibility
in thread Hierarchy of code reuse by flexibility
Thanks for joining the discussion. One note - everybody knows that 'cut and paste' is evil - but yet there is a case where everyone would agree that it is not - on the contrary - it is the way to go for short examples like the synopsis in most CPAN modules.Well, any sort of code template is essentially automated cut-and-paste. If you run h2xs or Module::Starter, you'll get an outline of code to start working with... and myself, I used to use some emacs code to generate perl accessors as needed.
The distinguishing feature of cut-and-paste vs. code abstraction is that with C&P you get a starting point that can be mutated at will without fear of effecting any other uses. The advantage of code abstraction is that if the interface is well designed, and well understood, you can often fix bugs by changing just one place in the code... but you'd better have good tests and/or QA, or you might have accidentally broken a use case without realizing it.
C&P has a bad reputation because it's too easy to do, and beginning programmers often produce large piles of C&P'd crap that's exceedingly difficult to read, let alone maintain.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Hierarchy of code reuse by flexibility
by zby (Vicar) on Feb 18, 2009 at 08:28 UTC | |
by doom (Deacon) on Feb 18, 2009 at 12:56 UTC |