This question also came up at When do you function?
. As I said in
that discussion, I like having lots of simple functions.
But more important than having simple functions is having
So build on them. If you have a number of
well-designed simple functions sitting around, then you
should have little difficulty in producing another simple
function that calls your other ones in order. Now the
person who uses your code can call the one official
function with a simple API, but anyone can read that and
break it down...
Now one warning. Before going off and building your
NiftyAPI it is worth putting a little energy into
reading Perl's documentation. You see Perl comes with
a wide range of functions that are fairly well suited to
commonly felt needs. So in your case if you read open
you will find that:
open(FH, ">> $file") or die "Cannot append to $file: $!";
already will create the file if it needs to. Now what it
doesn't do is the error check. It also won't create the
path to the file. But if all you need is the file, then
Perl already does the work for you. Likewise it is better
to learn the various file test operators than write verbose
functions for that.
However I have in the past happily created custom operations
whose value was that they would create files relative to
named configuration variables, creating paths if needed.
Now would I expect to create the path every time? No. But
using this I created a code-base for which a test environment
was easy to create. Just change the configuration variables
and run the program. It would create anything and
everything that it needed to see...
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||