title: What is Ext.namespace, how should we use them?
body: <p>I came across to <code>Ext.namespace()</code> in the project that I am working on. <br>
  I looked in <strong><a href="http://docs.sencha.com/extjs/4.2.1/#!/api/Ext-method-namespace" rel="noreferrer">Sencha's website</a></strong> and the explanation was not very helpful.</p>
  
  <p>This is what they are saying:</p>
  
  <blockquote>
    <p>Creates namespaces to be used for scoping variables and classes so
    that they are not global. Specifying the last node of a namespace
    implicitly creates all other nodes.</p>
  </blockquote>
  
  <pre><code>Ext.namespace('Company', 'Company.data');
  </code></pre>
  
  <p>They also mention that <code>Ext.ns('Company.data')</code> is preferable.</p>
  
  <p><em>I apologize if this question seems simple or dumb, but I really want to completely understand this concept. Thanks in advance</em> </p>
  
  <p><strong>This is what is not very clear to me:</strong></p>
  
  <ul>
  <li>If I have <code>Ext.namespace('Company', 'Company.data')</code> at the top of my JS page, does this mean that it carries all the other function name and variables (like a global scope)?</li>
  <li>What exactly 'Company' and 'Company.data' stand for in <code>Ext.namespace('Company', 'Company.data')</code>?</li>
  <li>Why new convention <code>Ext.ns('Company.data')</code> does not have 'Company' like in <code>Ext.namespace</code>? </li>
  <li>What does this mean <code>Specifying the last node of a namespace implicitly creates all other nodes</code>?</li>
  <li>When exactly this idea should be used?</li>
  </ul>