On 2/6/07, Peter Drake <[EMAIL PROTECTED]> wrote:

I'm planning to keep things at a very low level throughout the
course. These students aren't ever going to be writing programs more
than ten or twenty lines long, so all of the OO machinery is
unnecessarily confusing. (I am, of course, not trying to start any
kind of paradigm war here; I'm just explaining where I'm coming from.)


I confess to being overtly suspicious of any programming course
using Python that doesn't dive in to OO.  Seems a waste of a good
opportunity to enlighten students as to the state of the art, even if
they're not planning to become programmers.  Indeed, some of the
simplest programs one might want to write in Python involve
subclassing something from the standard library and overwriting
a few methods.

But this isn't to heap criticism on your CS0 in particular.  I've seen
any number of CS departments doing this ontogeny recapitulates
phylogeny thing, slogging through procedural code for an entire
semester, before unveiling OO in a second year.  I explicitly inveigh
against that practice in my aforementioned screencast "classes
and subclasses".  But then, I have a different demographic.  My
students are learning mathematics, and need operator overloading
from the get go.  How else to implement Vectors in a satisfying
manner, other than by implementing __add__ and/or __mul__?

Kirby
_______________________________________________
Edu-sig mailing list
[email protected]
http://mail.python.org/mailman/listinfo/edu-sig

Reply via email to