title: What's the best way to refactor a method that has too many (6+) parameters?
body: <p>Occasionally I come across methods with an uncomfortable number of parameters.  More often than not, they seem to be constructors.  It seems like there ought to be a better way, but I can't see what it is.  </p>
  
  <pre><code>return new Shniz(foo, bar, baz, quux, fred, wilma, barney, dino, donkey)
  </code></pre>
  
  <p>I've thought of using structs to represent the list of parameters, but that just seems to shift the problem from one place to another, and create another type in the process.</p>
  
  <pre><code>ShnizArgs args = new ShnizArgs(foo, bar, baz, quux, fred, wilma, barney, dino, donkey)
  return new Shniz(args);
  </code></pre>
  
  <p>So that doesn't seem like an improvement.  So what is the best approach?</p>