Re: @avalon
Peter Donald <[email protected]> Sat, 22 Mar 2003 12:12:01 +1100
| Newsgroups | gmane.comp.jakarta.avalon.phoenix.devel,gmane.comp.jakarta.turbine.maven.devel |
|---|---|
| Message-ID | <200303221212.01606.peter__46682.4571056806$1048294403@realityforge.org> |
On Fri, 21 Mar 2003 01:23, Berin Loritsch wrote:
> Peter Donald wrote:
> > On Thu, 20 Mar 2003 07:57, Berin Loritsch wrote:
> >>It's a name for crying out loud, what's to mature?
> >
> > And Poolable is just a marker interface for crying out loud, whats to
> > mature?
>
> An interface presents more constraints than a tag name. The
> tag name presents a weak contract, the interface presents a stronger
> contract due to the language constructs and strong typing of Java.
I disagree on this. The tag is metadata and metadata should be as strong =
a=20
contract as code itself. The only difference between tags and codebased=20
metadata schems is that codebased metadata schemes require;
* that the .class be loaded to get at metadata
* that the supporting metadata classes be accessible to classloader
> We can alter the values of the names without affecting the runtime
> compatibility of the code. You can't do that with interfaces.
>
> See where the difference is?
We have different opinions. I dont believe that "We can alter the values =
of=20
the names without affecting the runtime compatibility of the code." is tr=
ue.=20
Metadata interfaces are not work interfaces and thus never get exposed to=
=20
clients and thus they should have 0 effect on client code - only on the=20
client-container contract. This is exactly the same thing as metadata.
--=20
Cheers,
Peter Donald
---------------------------------------------------
"Wise men don't need advice. Fools don't take it."=20
-Benjamin Franklin=20
---------------------------------------------------=20