The Artima Developer Community
Sponsored Link

.NET Buzz Forum
Review of Object Thinking by David West

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Darrell Norton

Posts: 876
Nickname: dnorton
Registered: Mar, 2004

Darrell Norton is a consultant for CapTech Ventures.
Review of Object Thinking by David West Posted: Aug 3, 2004 7:18 PM
Reply to this message Reply

This post originated from an RSS feed registered with .NET Buzz by Darrell Norton.
Original Post: Review of Object Thinking by David West
Feed Title: Darrell Norton's Blog
Feed URL: /error.htm?aspxerrorpath=/blogs/darrell.norton/Rss.aspx
Feed Description: Agile Software Development: Scrum, XP, et al with .NET
Latest .NET Buzz Posts
Latest .NET Buzz Posts by Darrell Norton
Latest Posts From Darrell Norton's Blog

Advertisement

Object Thinking, by David West, is not your typical object-oriented programming book. The majority of the book explores the philosophical undertones of agile development and relates it back to object-oriented programming (OOP). West’s premise is that the vast majority of those purporting to do OOP are really writing miniature COBOL programs inside of classes. Agile methodologies and their thought leaders, like Kent Beck and Ward Cunningham, are some of the few “true” object-oriented programmers.

According to West, OOP really can result in order-of-magnitude improvements over traditional structured design methods. It takes a very special mindset, which he calls “object thinking”, to utilize OOP effectively. He shows some methods to help develop in a true object-oriented manner, some of which are interesting. Object cubes, for example, are “single, consistent, metaphor-preserving model objects (page 173).” Side 1 is your typical CRC card. Side 2 is a text description of the nature of the objects represented by the class. Side 3 is a list of contracts (public, protected, private). Side 4 identifies the data that the class requires to fulfill its duties. Side 5 is a list of all the message protocols (method signatures). And side 6 describes any events the object broadcasts.

Another topic the book covers is the use of self-evaluating rules as an object. What it basically works out to be is a class that can be instantiated for every business rule with what appear to be basic conditions, very similar to what you find in Excel for the “Conditional Formatting” of a cell. I haven’t needed to encapsulate business logic as a specialized type of self-evaluation rule class, but I can see that there could be a need.

Overall I feel that the book makes an important statement about the state of object-oriented programming today. It does relate to agile methods, and I’m sure that the thought leaders mentioned in the book develop using true “object thinking” as the author espouses it. However, I was left feeling like it needed more guidance on how to be a better object thinker. If you are interested in philosophy as it applies to software development, then this book may be a good read. If you are ruthlessly pragmatic, I'd suggest borrowing it and reading just chapters 3, 6, 7, 8, and 9.

Check out more book reviews at the WeProgram.NET Book Review page or my Book Review category.


This Blog Hosted On: http://www.DotNetJunkies.com/

Read: Review of Object Thinking by David West

Topic: Interview with Alfred's Mother... Previous Topic   Next Topic Topic: Wesner's thoughts on Collection versus List

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use