title: Proper model-view-controller design
body: <p>I have a Java project that I'm trying to implement with a model-view-controller design.  I have the backbone of all of the components established.  I'm having some trouble deciding on how to connect it all together, particularly the view and the controller.</p>
  
  <p>I have a class called <strong>MainView</strong> that extends <strong>JFrame</strong>.  I have various other classes that help make up the <strong>MainView</strong> each of which extends <strong>JPanel</strong>.  As an example one of these classes is called <strong>ParameterView</strong>.  Should I allow the controller to see each of these "sub-views" or should I let the controller only see <strong>MainView</strong> and have everything be managed through there?</p>
  
  <p>Likewise with the model, should the model be managed through one overarching class?</p>
  
  <p>Thanks!</p>