<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><br>
</p>
<br>
<div class="moz-cite-prefix">On 9/7/16 8:34 AM, Cantor, Scott wrote:<br>
</div>
<blockquote cite="mid:59f43988-7063-0c3d-842f-b6fc73e48939@osu.edu"
type="cite"><br>
<pre wrap="">
I think the real problem is that we need to stop using constructor
arguments so much.
</pre>
<br>
<pre wrap="">I don't have a good rule of thumb here, we know it's a problem. I think
the only real takeaways are:
- c'tor arguments are bad
</pre>
</blockquote>
<br>
Do you mean the actual use of constructor arguments in code? Or the
use of ctor arg names in Spring wiring with the "c:" namespace (as
opposed to indexes, or just using non-c namespace beans)?<br>
<br>
I don't really at all agree with the former. I think they're
natural and even essential for args that are mandatory, esp when the
class isn't Initializable or similar. It's the best way to ensure
that the class is instantiated in a known good state. And often you
don't want or need to expose a property with a public getter/setter.<br>
<br>
If the latter: I totally agree. I can't remember whether I ever
actually noted that issue on the list or calls. (I certainly did in
my head.) If not, I definitely meant to when I first started
noticing it. I understand it makes the wiring easier to read and
understand. But as we saw here, it ties us to the actual arg name,
which is a bit unusual. That's not really in general an expected
part of any class's contract. But we're already doing it all over,
so I guess that's more of a long-term discussion.<br>
</body>
</html>