Good Textbooks for Object Oriented Programming?
Captain_Frisk asks: "My buddy and I have recently received approval to teach a programming course at our Alma Mater. We have pretty much free reign over what we teach, so we've elected to teach 'An Introduction to Object Oriented Programming,' to fill a void at a school where the only programming languages taught are C and Matlab. Can anyone out there recommend some good books for the course, not just for the students, but for us to read as preparation material? We've never taught a class before, and as graduates of this school, we've never had any formal training in OOP. I read a few books at work a few years back, but I don't remember their names, nor did they strike me as particularly memorable. So far I've looked at An Introduction to Object-Oriented Programming and Object-Oriented Software Construction, 2nd Edition (a book reviewed at Slashdot 3 years ago), but have not invested in either."
Well, I've done a Java for juniors and seniors who already know OOP here at VT. In the past we have used the Core Java Volume 1 book, but that's not appropriate to your audience, since they don't already know OOP.
Take a look at Java Software Solutions (Addison-Wesley, author=John Lewis), if you are looking for a book tied directly to a language that the students will be working with. (Shameless plug: John was my Master's advisor, and I contributed to the text). It's been very well received at the collegiate level and is well supported. Since your students know C, they may be able to skip a few intro chapters on programming, data types, etc... or at least get through them quickly.
Deitel and Dietel's Java texts are also popular.
If you are looking for only a discussion of OOP topics and not bound to a particular language, I can't be of too much help there, I've not perused any of those recently.
One final point. Please consider attending SIGCSE (http://www.cs.cofc.edu/sigcse2002) in February. It's an invaluable resource for computer science instruction for both new (novice) and old (er, experienced) instructors. SIGCSE is a great place to make contacts, get help on related issues, check out the texts, etc....