On 2010-06-14, Jon Stevens wrote:

> On Mon, Jun 14, 2010 at 2:06 AM, Stefan Bodewig <bode...@apache.org> wrote:
>>  Since that method is final (at least in 1.8.0) you can't even
>> override it.

> Yea, can we talk about this? It seems like there is a lot of places
> where ant discourages people from being able to override stuff. Is
> there a good reason for that?

The more things are final the more freedom we have to change things
without breaking backwards compatibility.  For example I had to tunnel
new arguments in ThreadLocals inside the <zip> task because a different
task (jarjar) was overriding a protected method that I no longer
intended to invoke directly for 1.8.0.

I've been doing C# during ${dayjob} for most of the last five years and
there "final" is the default.  It forces you to think about what
extension points you are willing to support in the future.  Nowadays I
tend to make things final in Java as well and only open up access as
needed.

This is just my personal opinion and doesn't necessary reflect what
others around here think.  YMMV.

> http://code.google.com/p/sweetened/source/browse/trunk/example.xml

Looks a lot nicer than the initial version, congrats.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org
For additional commands, e-mail: dev-h...@ant.apache.org

Reply via email to