title: When to use getInstanceOf instead of constructor
body: <p>Back couple of months ago I attended a presentation hosted by two representative of an independent software development company. It was mainly about good software design and practices.</p>
  
  <p>The two guys were talking mainly about Java and I remember them saying, that in some circumstances it is very good practice to use getInstanceOf() instead of the constructor. It had something to do with making always calling getInstanceOf() from different classes rather than constructor and how it was it is much better approach on larger scale projects.</p>
  
  <p>As you can see I cannot remember much from it now :/ but I remember that the arguments that they used were really convincing. I wonder if any of you ever came across such a design and when, would you say, is it useful? Or do you think it isn't at all?</p>