On Wednesday 25 February 2004 00:55, Scott Brickner wrote:
> Javadoc is normally inheritable these days -- if you override a method
> (or implement one from an interface), but don't provide a doc comment,
> it will inherit the comment from the base class.
>
> Seems like that ought to apply to @avalon tags. The various descriptors
> ought to be merged for each of the classes in the inheritance tree.
I like the word "seems" :o)
/** Abc
*/
public void myMethod(){ }
and
/** Def
*/
public void myMethod() { }
is pretty easy semantically to make a rule about and after generations of JDK
development, support "inheritence" (which it is not).
/** Abc
* @mytag
*/
public void myMethod(){ }
and
/** Def
*/
public void myMethod() { }
What is the result now?
/** Abc
* @mytag
*/
public void myMethod(){ }
and
/** Def
* @yourtag
*/
public void myMethod() { }
/** Abc
* @mytag name="Abc"
*/
public void myMethod(){ }
and
/** Def
* @mytag name="Def"
*/
public void myMethod() { }
and so on...
I am personally against "ambiguities" as I am convinced that by allowing
developers to do things too freely (believe it or not) has put the software
industry in the shitty position it is. And now you are looking for an ad-hoc
mechanism for a concept (inheritence, which I think is far too overused) not
intended in the language construct.
As Albert wrote; Many of the Avalon developers are very restrictive to
inheritence, as I hope many Avalon users will discover and appreciate sooner
or later.
The bottom-line is; Except for a smaller number of use-cases, inheritence adds
more maintenance problems than it solves. COP is, IMHO, far superior than any
other "code arrangement" that I have seen, and it is almost by definition
incompatible with inheritence.
I hope I don't sound too harsh, but I am trying to set you back in the chair
so much that perhaps a "wow, what if he is right? Can it really be better
without inheritence?".
Cheers
Niclas
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]