File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes OO, Patterns, UML and Refactoring and the fly likes Object Oriented Thought Process Question Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "Object Oriented Thought Process Question" Watch "Object Oriented Thought Process Question" New topic

Object Oriented Thought Process Question

Melodie Rice

Joined: Mar 09, 2010
Posts: 8
Hi Matt,

I have a little trouble figuring out the best way to design OOP applications up front, without overdesigning and getting wrapped around too much complexity.

Does your book cover some design patterns and aspects of this that could help initial designing?

Thanks much!
Matt Weisfeld

Joined: May 01, 2013
Posts: 24
Hi Melodie,

The book has one chapter on Design Patters that covers some basic concepts. There are a few patterns that are covered, but the chapter is not in any way a primer on design patterns.

The intent of the book is to simply introduce how object concepts apply to various development topics. The first half of the book covers the fundamental O-O concepts such as encapsulation, polymorphism, interfaces, composition and inheritance. The second half shows how these fundamental O-O concepts are used with various technologies such as XML, web services, etc.



Matt Weisfeld
Junilu Lacar

Joined: Feb 26, 2001
Posts: 6529

I think one of the best answers I've heard to the question of "What patterns do I start with?" is "Don't start with patterns; rather, understand good design principles and use pattern-guided refactoring to build systems that are easy to understand, maintain, and extend." Any thoughts on this, Matt?

Junilu - [How to Ask Questions] [How to Answer Questions]
Billy Tsai
Ranch Hand

Joined: May 23, 2003
Posts: 1304
Does the book also covers OO principles in theory from the design perspective and how do OO concepts relate to the principles?
Another question is does the author still think or feel that UML is still important for OOAD?

BEA 8.1 Certified Administrator, IBM Certified Solution Developer For XML 1.1 and Related Technologies, SCJP, SCWCD, SCBCD, SCDJWS, SCJD, SCEA,
Oracle Certified Master Java EE 5 Enterprise Architect
Matt Weisfeld

Joined: May 01, 2013
Posts: 24
Design patters are obviously important, but as with anything, you don't want to grab a powerful tool before you understand what the job at hand is. My approach to teaching the OO concepts is to concentrate on the basic, fundamental concepts and try to reinforce those using various tools like code in Java, C# and Objective-C, etc. Then I use very basic examples of specific technologies like XML, Design Patterns, etc.

Personally, I would focus on the basic concepts first: such as encapsulation, polymorphism, interfaces, composition and inheritance and get comfortable with those. You can then study some specific topics like design patterns to see how the concepts are applied.

As far as UML goes, in my writings and when I teach programming, I like to use UML class diagrams as a graphical way to assist in the learning process. I find that UML class diagrams are really good for demonstrating how to model systems and show relationships between classes.
I agree. Here's the link:
subject: Object Oriented Thought Process Question
It's not a secret anymore!