title: Command line parameters or configuration file?
body: <p>I'm developing a tool that will perform several types of analysis, and each analysis can have different levels of thoroughness. This app will have a fair amount of options to be given before it starts. I started implementing this using a configuration file, since the number of types of analysis specified were little. As the number of options implemented grew, I created more configuration files. Then, I started mixing some command line parameters since some of the options could only be flags. Now, I've mixed a bunch of command line parameters with configuration files and feel I need refactoring.</p>
  
  <p>My question is, When and why would you use command line parameters instead of configuration files and vice versa?  </p>
  
  <p>Is it perhaps related to the language you use, personal preference, etc.?</p>
  
  <p>EDIT: I'm developing a java app that will work in Windows and Mac. I don't have a GUI for now.</p>