On Dec 3, 2008, at 5:53 AM, Emmanuel Lecharny wrote:
Graham Leggett wrote:
Emmanuel Lecharny wrote:
I can't agree more :/ I already mentionned the fact that using
spring + xbeans was most certainly a bad decision (IMHO), leading
to more problems than solutions...
But this might be just me :)
I completely agree.
The acid test is in the error messages: if a user gets a message
that makes no sense to an end user, then the software is
fundamentally broken. Spring moves lots of stuff that would
otherwise be caught by your compiler (using annotations and other
useful things) into the runtime, and this means end users hit the
bugs, not the developers.
<personal opinion>
I will go a bit forward (and it's not totally related to ADS) :
IMHO, Spring itself is just not the way to go when you want to offer
a solution which is not embeddable only. It does not make sense.
I think that the DI/IOC approach has been stretched far too much.
From a cool techno, very usefull when you want to develop a
pluggable system, that's just fine. Otherwise, it's just following
the buzz, and abusing the idea badly.
</personal opinion>
From the ADS pov, I don't think we will have time to change
anything, unless we spend a serious amount of time defining a better
solution in the next few months. This can be discussed too...
Several people on this list sure like to complain about xbean-spring
but I still don't really understand what they would prefer. IMO the
idea behind component oriented wiring frameworks like xbean-spring is
that all the exposed configuration knobs and wires are things that
reasonable users will want to turn or rewire. xbean-spring gives you
a machine-syntax-checkable way to turn all the knobs and plug in all
the wires. (spring alone is not machine-syntax-checkable). If you
don't like it there are several possibilities I can think of....
- too many or too few knobs and wires. This means the components
aren't the right size, and is not really a problem with xbean-spring
- pointy brackets are too sharp and makes my eyes bleed. xml really
sucks, but its widely understood, syntax-checkable, and doesn't
require compilation. Wiring in java is very clear but requires
compilation. Groovy builders are really nice but AFAIK don't really
have machine syntax validation.
Certainly in spring and I think in xbean-spring you can pull some
commonly modified properties out into a properties file. Perhaps this
could be used to supply a "sysadmin-friendly" set of knobs to turn for
stuff like ports and enabled flags along with the full xml
configuration file.
thanks
david jencks
--
--
cordialement, regards,
Emmanuel Lécharny
www.iktek.com
directory.apache.org