Henry Story wrote:

Not only is it not "strained and spurious", this simplification is natural and obvious. When James Gosling wrote BlogEd he made the head an entry. I think this is a simplification that will feel completely natural to any OO (or other) software engineer. You have two things with a one to one mapping between their field types: immediately look to see if there is a similarity.


This would fall under Martin Fowler's "Extract Superclass" Refactoring pattern (p336): [...]

I've seen Fowler give advice contra that variant of DRY - where the two pieces of code are structurally similar but conceptually different. I happen to agree with that advice. Few things are worse in OO systems that superclasses whose children are not specializations of it or whose children end up being disjoint. IOW I think this smacks of inheritance for reuse; and that is an antipattern.



Trying to pretend that the header is an entry doesn't really seem helpful. -Tim
I think this is so clearly helpful in the clarity of the spec, I find it difficult to see how this is not evident. Line number count would be a simple objective measurement of this.

The similarity between feeds and entries is that they both are metadata about web resources. That does not by itself make them conceptually similar in the Atom domain. My opinion of the Feed isa Entry approach is that it's looking for a abstraction that will serve only to obfuscates matters. My experience is that eliding aspects of domain models in favour of generic structures is often a flawed approach.


cheers
Bill





Reply via email to