0
$\begingroup$

I'm looking for a text for a course in object oriented programming. Most of the students will have done some programming courses in the past, but the background of the students is varied so the purpose of this course is to ensure that they are all well grounded in basic programming and object-oriented ideas such as abstraction, design by contract, polymorphic code, generic code, etc. The language of the course is probably Java, but could also be Python.

I had suggested Barbara Liskov's textbook, Program Development in Java: Abstraction, Specification, and Object-Oriented Design. But unfortunately it is out of print. (Although still available as an e-book.)


This is graduate level for a professional masters in computer engineering. However the educational background of the students is quite varied and some are, quite frankly, not competent at programming when they arrive. Hence this fairly low-level course.

$\endgroup$
  • $\begingroup$ I should have said this is graduate level for a professional masters in computer engineering. However the educational background of the students is quite varied and some are, quite frankly, not competent at programming when they arrive. Hence this fairly low-level course. $\endgroup$ – Theodore Norvell Sep 1 at 15:31
  • $\begingroup$ Do you need to project "seriousness" or can it also be a bit of fun, though excellent, and complete? $\endgroup$ – Buffy Sep 1 at 15:48
  • 1
    $\begingroup$ @Buffy I am not against fun. I do find that some books try too hard to be fun and end up with silly examples that don't give insight into how an idea might be applied in situations that are likely to come up in the real world. $\endgroup$ – Theodore Norvell Sep 1 at 17:16
  • $\begingroup$ For all of the years I've taught OO, I've never used a textbook as a primary resource. I think Liang has a pretty good one, but I am locked out of my institution (where my books are), so I can't check whether it has good (any?) exercises. Hence, my hesitation to create an answer. $\endgroup$ – Ben I. Sep 2 at 15:00
  • $\begingroup$ @BenI. Thanks. I guess that's Introduction to Java Programming and Data Structures by Y. Daniel Liang. $\endgroup$ – Theodore Norvell Sep 2 at 15:46
2
$\begingroup$

My suggestion is "Object Oriented Programming in Python" by Goldwasser & Letscher https://cs.slu.edu/~goldwamh/oopp/ It's a free PDF download, or you can buy a paper copy. They have a companion graphics module that is simple to understand for rudimentary GUI applications. Hope this helps.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.