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
