[Tutor] Code review, plase
steve at pearwood.info
Wed Sep 8 00:20:21 CEST 2010
On Wed, 8 Sep 2010 06:39:27 am Alex wrote:
> Hi all.
> Could someone review my code? It's the first time I develop a
> reusable module and I would like to have some feedback.
> If you think it's good enough I will package it for pypi.
> I put the code on pastebin: http://pastebin.com/Tz367gAM
Let's start with some little things... you talk about "the Unix CronTab"
command, but there's no such thing, at least on Linux:
[steve at sylar ~]$ CronTab
bash: CronTab: command not found
It would be very unusual for a Unix command to be written in CamelCase.
The command is actually "crontab".
In the _remove_crontab method, you say "*All* the information contained
in the crontab file are permanently lost", but that's grammatically
incorrect -- "information" is a mass noun, i.e. neither singular nor
plural. So in standard English, you would say "all the information in
the file is permanently lost", not "are lost", in the same way that you
would say "the sugar is on the table" or "the grass is green".
You overuse leading-underscore method names. Use them only for private
methods. You use them for public methods, and even give an example of
how to remove the entire file:
>>> #Remove the entire crontab file
When you're telling people to use this command, that's a good sign that
it is public not private!
In PRESETS, what's "mothly" mean? *wink*
What happens if I do this?
ct1 = micron.CronTab()
ct2 = micron.CronTab()
ct1.add_job('daily', 'echo "BOOM!"')
ct2.add_job('daily', 'echo "No BOOM today"')
Do they fight? What happens?
More information about the Tutor