in reply to Implementing methods in a subclass or providing in-place callback: Is it overengineered?

Without having read anything more than the title of your post, the very fact that you are asking the question, pretty much guarantees that the answer is yes.

If it -- whatever it is -- was a requirement or necessity, then you wouldn't be thinking the question, much less asking it here, so that means you have or are considering implementing a piece of "wouldn't it be cool if" code, and that is over-engineering by definition.

Whether that is of itself a bad thing, depends entirely upon the costs of your design decision; and you probably won't know those until your code has been in production, or at least regular use for a good while, and it will be too late to rescind it.

Bottom line: think carefully about providing 'optional extras'; they always have associated costs.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority". I knew I was on the right track :)
In the absence of evidence, opinion is indistinguishable from prejudice.
  • Comment on Re: Implementing methods in a subclass or providing in-place callback: Is it overengineered?