View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Where's the OO in this Class?

Is this class about Object-Oriented Design, or about Hacking? Is it in fact giving BAD examples? Well, the instructors certainly intended for the class to be about OO design, and they certianly intended for the projects to admit good designs. But what do you guys think? Here are a few posts from the newsgroup, to start things off:

Ben Garrison writes:

It may just be me, but I think that this milestone was a very
short-sighted, poorly thought-out idea. It has nothing to do with object
oriented design at all; it is turning into more of a cs2130 type class,
but written using a poorly written hack of a programming environment. The
point of the class (to learn OO design) has been thrown out the window in
favor of teaching us how to hack code that only works half of the time
because of how much squeak sucks. The general inability to come up
with programs that will provide good learning experiences surpasses that
of even cs1311.

P. Coltrain writes:

Well, affirming your rant, I think there has been way to little actual
OO designing and WAY to much Squeak hacking. OO design is
a very respectable thing to learn – I was excited about it, but now
I'm just ready for it to be over. And we won't even bother going
into Squeak...

Take a look at Previous CS2340 Terms and the solutions on the Cases page – the JukeBox has complexity on-par with the Math Equation editor and somewhat less than the Personal Newspaper project. If you don't see how good design can make this job easier, then maybe you're not getting the point of O-O design yet. Mark Guzdial

the Newspaper was a horrid nightmare, from what I recall. =) Shaggz
I think that this project is meant to be a kinda intro to squeak. Just like the first weeks of cs2130 were intro to c. As far as this not being a good example of Object Oriented Programming, I think that OO paradigm focuses more around the solution, not the problem. the problem can be solved in a number of ways, one of them being OO. So.. if you think that this program has NOTHING to do with OOD, then it's your fault for not using OOD to find the solution, not the problems fault. I've already started my design and i'm using Aggregation, Inheretance, Polymorphism, delegation, etc... so from my point of the view, this problem has an excellent OOD/A application. would you agree with that Mark?
/ | \ ugh... my bad.. forgot my name.... Jason Fulghum
Most the above complaints came from the Summer or Spring semesters. It's in response to these complaints that I've toned down the programming on this project (at least compared to the Newspaper :-), but increased the amount of design discussion. But I think it is a valid point that just about any problem of reasonable complexity can be handled in an O-O fashion. Some students may have been swayed by the API required. That's why I'm encouraging y'all to redesign in P6. Mark Guzdial

OOP criticism that make for interesting discussion:

Link to this Page