Meaningless Drivel is fun!*
The moose likes OO, Patterns, UML and Refactoring and the fly likes Learning OO Design Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "Learning OO Design" Watch "Learning OO Design" New topic
Author

Learning OO Design

Mr. C Lamont Gilbert
Ranch Hand

Joined: Oct 05, 2001
Posts: 1170

I have been writing Software in Java for probably 8 years now. I know all the patterns and all the ins and outs of Java. At this point I am more interested in learning how to design a program in an OO fashion.

When I look at my code it seems like sequential code, reworked into objects here and there. Its starting to chafe.


Where is a good place to start learning OO design. Seems like its tied to UML. I'd like a good book I can read over lunch or in my car, etc.

thanks!
Ilja Preuss
author
Sheriff

Joined: Jul 11, 2001
Posts: 14112
In that case, I'd highly recommend "Agile Software Development - Principles, Patterns and Practices" by Robert C. Martin.


The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
Stan James
(instanceof Sidekick)
Ranch Hand

Joined: Jan 29, 2003
Posts: 8791
Ilja and I usuall race to recommend this book. He got me by a whole day this time. It's not just a superb reference for the best OO design principles but has some eye-opening examples applying them in building complex systems from scratch.


A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
Mr. C Lamont Gilbert
Ranch Hand

Joined: Oct 05, 2001
Posts: 1170

A recommendation by you two can't miss!
[ June 09, 2006: Message edited by: Mr. C Lamont Gilbert ]
Vladas Razas
Ranch Hand

Joined: Dec 02, 2003
Posts: 385
When I look at my code it seems like sequential code, reworked into objects here and there. Its starting to chafe.


I'd take a look into Martin Fowler's "Refactoring: Improving the Design of Existing Code".
Ilja Preuss
author
Sheriff

Joined: Jul 11, 2001
Posts: 14112
Originally posted by Vladas Razas:

I'd take a look into Martin Fowler's "Refactoring: Improving the Design of Existing Code".


That's definitely a must-read - it's basically what I learned OOP from.

But that was before "Agile Software Development" was written, and I think it's gives better general advice. "Refactoring" would be a great follow up book.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Learning OO Design
 
Similar Threads
Deperatley Seeking enlightenment in OOPS
Why an "engine" for workflow ?
Interfaces
Object "Savvy"
Passed SCEA (I)!!!