On Tue, 7 Nov 2006, Shane Hathaway wrote:

Levi Pearson wrote:
On Nov 7, 2006, at 7:55 AM, Jonathan Duncan wrote:
Can anyone suggest to me a programming language agnostic book on OOP
theory?


I would guess that Chris's suggestion is pretty good, though I haven't
read it myself.  You will not find a completely agnostic book on OOP
theory, though, because object oriented programming isn't sufficiently
well-defined.  It means very different things to different people, and
different languages have their own opinions, so to speak, on what OOP is.

In particular, you'll find that static typing has a strong effect on
what people think OOP is.  The canonical Design Patterns book expects
static typing and thus applies well to C++ and Java, but many of the
patterns become irrelevant when applied to dynamic languages.  For
example, in Python, the factory pattern is in a sense built in to the
language, since constructors and functions are called the same way.

The examples within are in Java, but the concepts translate fairly
easily to C++.   Although some people are saying these days that design
patterns are signs of language deficiency,

That sentiment comes directly from the LISP community.  It's both right
and wrong.  It's right because a more flexible language like LISP lets
you eliminate the repetition that sometimes arises from design patterns.
However, another intent of design patterns is to express the design of
the software to other developers, and that alone has obvious value.

Once you get your OOP skills honed, you should try mastering some
Functional Programming skills.  It's fun, and the wave of the future! ;)

You may be right. :-)


Chris, Levi, and Shane, thanks for the book ideas. They all look like pretty good books and have good reviews on Amazon. Maybe I will have to get all three.

I did not want to mention PHP because it really does not need to be mentioned, but I am currently delving into PHP 5 and wanted to make sure my OOP training was well-founded be before I get too far into PHP 5. While it is a language that I commonly use, I do not want to limit myself. In college I poked around in Fortran, Lisp, Pascal, Java, and C++. I have also played with Perl and tcl/tk.

I have never really taken the time, until know, to really build best OOP practices. I figure it is better late than never. Hence the search for a good OOP theory book. The design books are welcome also. I have "PHP 5 Objects, Patterns, and Practices" that I have been reading and I have been realizing that I need to start at a more fundamental level. I was planning on getting "Beginning PHP 5 and MySQL" and then decided that I should first go even more fundamental and get into theory.

If any of this information helps clarify what I am looking for I welcome further book suggestions. If not, I will just decide from among those that have been given.

I appreciate the help.

Jonathan

/*
PLUG: http://plug.org, #utah on irc.freenode.net
Unsubscribe: http://plug.org/mailman/options/plug
Don't fear the penguin.
*/

Reply via email to