Customer Reviews


8 Reviews
5 star:
 (5)
4 star:
 (1)
3 star:
 (1)
2 star:
 (1)
1 star:    (0)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 

The most helpful favorable review
The most helpful critical review


22 of 23 people found the following review helpful
5.0 out of 5 stars The link between object oriented theory and design patterns
This is a very intersting book. While the catalogue of patterns that form the result of the research aren't in themselves mind-blowing, the analytical methods that Jason McC. Smith used to arrive at the elemental design patterns, and the methods he uses to reconstruct well-known patterns based on these, are worthy of close study. This book is aimed toward software...
Published on May 2, 2012 by The Last Person You'd Expect

versus
7 of 7 people found the following review helpful
3.0 out of 5 stars Interesting topic, but can be hard to read
I bought this book, thinking it would provide a very basic overview of the common design patterns in software development. What I instead found was a very difficult read that more closely resembles a scientific dissection of the building blocks of said design patterns. While the author states in the preface that he assumes you will be familiar with design patterns at...
Published 20 months ago by Dare_Wreck


Most Helpful First | Newest First

22 of 23 people found the following review helpful
5.0 out of 5 stars The link between object oriented theory and design patterns, May 2, 2012
By 
The Last Person You'd Expect (Seattle, WA United States) - See all my reviews
This review is from: Elemental Design Patterns (Hardcover)
This is a very intersting book. While the catalogue of patterns that form the result of the research aren't in themselves mind-blowing, the analytical methods that Jason McC. Smith used to arrive at the elemental design patterns, and the methods he uses to reconstruct well-known patterns based on these, are worthy of close study. This book is aimed toward software designers, architects and should be of utmost interest to creators of code analysis tools, since this was the impetus for the author's study in the first place. Far from being 'another design patterns' book, this seeks to present a foundation for *all possible* OO design patterns. An appendix demonstrates the mathematics that should prove this claim.

To summarize the book's objective, Smith sought to derive the simplest possible language-agnostic patterns (e.g. 'extend method', 'instantiate class') from object-oriented principles as a way to use them as building blocks for recognizing larger constructs such as those presented in the well-known 'GoF' book, such as the 'Abstract Factory' or 'Visitor' patterns. The first half of the book is a friendly and entertaining guide through the author's research process in which he explains how the elemental patterns are combined. By supplementing UML with his own modelling innovations, he can deftly show how the elements interact in more complicated ways. The second half manages to not be tedious, despite it mostly being in a catalogue format similar to that used in the GoF's Design Patterns book.

Even as someone who's currently more interested in functional-language software design than object-oriented, I found this to be a fascinating and enjoyable read and I'm confident that most would agree.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


27 of 30 people found the following review helpful
5.0 out of 5 stars This is a very refreshing read!!!, May 3, 2012
This review is from: Elemental Design Patterns (Hardcover)
Elemental Design Patterns are the underlying core concepts of programming and software design that have remained described.

This book is a book I wish I had 15 years ago to help me put the basics of programming into their proper context. Learning how to make use of patterns over the years would have been much simpler had I read this book first.

I have listed the chapters of the book below along with the patterns in the catalog. Take a look at he names of the patterns and you can see how low level these patterns are.

Chapter 1: Introduction to Design Patterns
Chapter 2: Elemental Design Patterns
Chapter 3: Pattern Instance Notation
Chapter 4: Working with EDPs
Chapter 5: EDP Catalog
Create Object
Retrieve
Inheritance
Abstract Interface
Delegation
Redirection
Conglomeration
Recursion
Revert Method
Extend Method
Delegated Conglomeration
Redirected Recursion
Trusted Delegation
Trusted Redirection
Deputized Delegation
Deputized Redirection
Chapter 6: Intermediate Pattern Compositions
Fulfill Method
Retrieve New
Retrieve Shared
Objectifier
Object Recursion
Chapter 7: Gang of Four Pattern Compositions
7.1 Creational Patterns
7.2 Structural Patterns
7.3 Behavioral Patterns
Appendix A: Rho-Calculus

My goal with a solution's architecture is always to make it the simplest solution possible in order to maximize maintainability. That means i must accomplish providing the highest level of transparency possible. That means providing the right level of detail at the right level of abstraction. When they are used patterns allow for a common language to be used. This book provides a language to allow you to go to a lower level of abstraction getting to the core concepts of programming.

My favorite part of this book is how explicitly names and sheds light on all the logic we take for granted when we are programming. Don't however expect to breeze through this book. Although the author is bringing to light concepts that you use everyday, this is the first time you'll be thinking about them with intensity. You have to following along with the author's logical introduction throughout the first few chapters to get the why of the rest of the book.

I think the Pattern Instance Notation (PIN) and the different PINboxes is a really cool way to visually represent patterns, parts of patterns, and the associated patterns.

This thought that kept coming to mind as I read this book is "this is the way I wish I would have learned this in the beginning of my career". This is a refreshing read. It makes you think in an enjoyable way and you really do learn something of value along the way.

Anyone involved with any programming language should read this book.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


7 of 7 people found the following review helpful
3.0 out of 5 stars Interesting topic, but can be hard to read, December 26, 2012
This review is from: Elemental Design Patterns (Hardcover)
I bought this book, thinking it would provide a very basic overview of the common design patterns in software development. What I instead found was a very difficult read that more closely resembles a scientific dissection of the building blocks of said design patterns. While the author states in the preface that he assumes you will be familiar with design patterns at least in passing, I believe the reader will be absolutely lost without a somewhat higher level understanding of design patterns. I've read through the Gang of Four's Design Patterns book and still found that this material required several reads to finally sink in (not that the Gang of Four's book was all that different, to be honest).

However, the content that is included is fascinating, if you have the patience to get through it. The Pattern Instance Notation (PIN) is a novel way to break down (or build up) design patterns from other patterns and might help

Overall, Elemental Design Patterns is an interesting book and can provide an extra foundation for your software design, but I'd probably recommend it for software engineers and not software developers (if you can define the difference between the two groups of programmers, you'll probably enjoy this book).
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


12 of 14 people found the following review helpful
5.0 out of 5 stars Symbology can be crucial, June 12, 2012
Verified Purchase(What's this?)
This review is from: Elemental Design Patterns (Hardcover)
Much like Linear Algebra introduces and develops a streamlined symbology for many-equation algebra, the author here introduces 'PIN', a method of encapsulating UML and collapsing the pattern-internals to focus on the -external- connections of the patterns.

This elimination of visual complexity - while retaining the ability to 'zoom in' for the details - provides an environment better suited to actually exploring vast swaths of code in search of canonical patterns. Or antipatterns.

The author proceeds to use his SPQR mechanistic pattern-seeking code in an attempt to identify individual 'Elemental Design Patterns'. That is - the indivisible core elements of the standard higher-level design patterns. In a fashion that is programming language agnostic.

Although this work does not comprehensively explore the core canonical design patterns, it is still a solid introduction to the entire area that does not sink directly into the morass of extensive UML.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 6 people found the following review helpful
4.0 out of 5 stars Heavy theory at parts, but a worthwhile read, August 20, 2012
By 
Wesley Freeman (Roanoke, VA United States) - See all my reviews
(REAL NAME)   
This review is from: Elemental Design Patterns (Hardcover)
I nearly got lost in the theory parts of chapter 2 and 4, but wading through and taking the time to understand the ideas behind these "elemental" patterns was worthwhile upon reaching chapter 5, the pattern catalog, which constitutes the bulk of the book.

The Pattern Instance Notation (PIN) diagram introduced in Chapter 3 was very well thought out, and although seemingly somewhat off topic, I'm glad it was included. It provides a hierarchical structure, which gives a way of viewing your system at different levels of granularity. I'm interested to see if it will catch on with software architects.

The example code is in C++ and is well-formatted. Although the description of the book claims it will be part "example-rich cookbook", I'm not sure that I'd consider it to be at the cookbook level of practicality.

In the end, I think this was an effort worthy of a read by architects and developers, and I think the PIN diagram system may gain popularity, if software aimed at authoring/viewing it easily became available.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5.0 out of 5 stars If you're looking for programming theory, this book is for you, January 11, 2013
By 
E. Taylor (Pittsburgh, PA) - See all my reviews
(REAL NAME)   
Verified Purchase(What's this?)
This review is from: Elemental Design Patterns (Hardcover)
I bought this book as a gift for my husband, who is a professional computer programmer and university instructor, and he loves it. He says that this book defines the vocabulary and concepts that programmers use to talk about their profession.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


0 of 2 people found the following review helpful
5.0 out of 5 stars Great book for explaining design pattern, December 2, 2012
Verified Purchase(What's this?)
This review is from: Elemental Design Patterns (Hardcover)
Great book and examples it is progressing with each chapter. I think it a good book for beginners and expart
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


6 of 24 people found the following review helpful
2.0 out of 5 stars Good book but one for the bookshelf, May 19, 2012
Verified Purchase(What's this?)
A very in depth account of design patterns - not really useful for the developer looking for practical solutions to problems. Found the text very wordy. Very old language examples using C++.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


Most Helpful First | Newest First

Details

Elemental Design Patterns
Elemental Design Patterns by Jason McColm Smith (Hardcover - April 7, 2012)
$44.99 $29.12
In Stock
Add to cart Add to wishlist
Search these reviews only
Rate and Discover Movies
Send us feedback How can we make Amazon Customer Reviews better for you? Let us know here.