<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>