book on oop concepts

T

tom fredriksen

Hi

I came across a book which discusses oop concepts in detail, independent
of programming language:

"An introduction to Object-Oriented Programming", 3rd Ed.
Timothy Budd

I was wondering if anybody has read it and if its any good or if there
are any other books that are better.

/tom
 
C

Chris Uppal

tom said:
"An introduction to Object-Oriented Programming", 3rd Ed.
Timothy Budd

I was wondering if anybody has read it and if its any good or if there
are any other books that are better.

I haven't read it myself, but got interested enough to do some research ;-)

There are some sample chapters here:

http://web.engr.oregonstate.edu/~budd/Books/oopintro3e/info/ReadMe.html

and judging from a fairly fast skimming of them I would say that it looks very
good indeed. (FWIW, I plan to get a copy myself). There may be more emphasis
on compare-and-contrast between different languages, and their differing
visions of OO, than is warranted -- but that depends on what you are reading
the book for.

I would urge anyone to read the first three chapters (at the above link) even
if you don't plan to buy the book.

There are two kinds of worthwhile books about OO (and several more kinds of
worthless books about OO). One good kind is about the tools the language
provides (like classes, methods, inheritance) which /allow/ you to program in
OO style. The second kind is about what you /do/ with those tools once you
have them.

This book (judging by the samples and contents page) is more in the second camp
than the first.

Another book, which I have occasionally recommended before in this groups, is
bang in the centre of the second camp:
Object Design
Roles, Responsibilities, and Collaborations
Rebecca Wirfs-Brock and Alan McKean
(For some reason I tend to misspell "Rebecca" as "Rebacca"). Google will find
what I've said about that book (and what lots of other people think too ;-).

-- chris
 
T

TechBookReport

tom said:
Hi

I came across a book which discusses oop concepts in detail, independent
of programming language:

"An introduction to Object-Oriented Programming", 3rd Ed.
Timothy Budd

I was wondering if anybody has read it and if its any good or if there
are any other books that are better.

/tom

Not read that one, but 'Object Thinking' by David West
(http://www.techbookreport.com/tbr0083.html) is very good.

Pan
 
B

BWill

tom said:
Hi

I came across a book which discusses oop concepts in detail, independent
of programming language:

"An introduction to Object-Oriented Programming", 3rd Ed.
Timothy Budd

I was wondering if anybody has read it and if its any good or if there
are any other books that are better.

/tom

Are you struggling with the core concepts of classes and such in Java?
Or are you just uncertain how to structure your programs as a bunch of
classes?

If the latter, I advise you to stay away from OOP theory and sloganizing
because I found those kinds of explanations vague and misleading.
Assuming you're familiar with UDT's (user-defined datatypes i.e. structs
in C or records in Pascal) a class is simply a UDT with not just
variable members but functions members as well. It's a bit hard at first
to see in what sense functions 'belong' to data.

If you're interested, I could mail you a primer for C programmers
explaining the basic OOP concepts common to the most popular OOP
languages (Java, C++,C#).

Learning how best to structure programs as classes, however, is a
complex topic that is hard to systematically learn. The only real
systematic treatment of OOP program structure is the 'design pattern'
theory developed by the so-called Gang of Four:
http://en.wikipedia.org/wiki/Design_Patterns

(Stricly speaking, though, patterns are not exclusively applicable to OOP.)


--brian
 
T

tom fredriksen

BWill said:
Are you struggling with the core concepts of classes and such in Java?
Or are you just uncertain how to structure your programs as a bunch of
classes?

The book goes deeper than that, its more about language concepts and
constructs. Thats what I am looking to understand, what constructs
languages are made up of and why, whats their strengths and waknesess,
further on what the language designers thinking for choosing different
constructs was, and so on. Since I am programming java I want to
properly understand oop constructs independent of the language. I want
to be able to asses what java can do and what it can not do. Also, if
there are any languages that in my opinion is better for general use,
and, lastly, what languages are best suited for what purposes.

I have read a good and general book called "Concepts of programming
languages" by Robert W. Sebesta, which is a good foundation, but I also
want to dig into the details of oop and for that I need a good book

/tom
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,432
Messages
2,571,680
Members
48,796
Latest member
Greg L.

Latest Threads

Top