<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/" 
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" 
	xmlns:admin="http://webns.net/mvcb/" 
	xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/" 
	xmlns:atom="http://www.w3.org/2005/Atom">
	
	<channel>
	
		<title>Countdown to Ext JS 4: Dynamic Loading and New Class System</title>
		<link>http://www.sencha.com/blog/countdown-to-ext-js-4-dynamic-loading-and-new-class-system</link>
		<description>Today we&#8217;re unveiling the first in a series of new features coming in Ext JS 4 &#8211; a brand new class system. Follow along with our blog series as we continue the countdown to Ext JS 4.</description>
		<dc:language>en-us</dc:language>
		<dc:creator>ed@sencha.com</dc:creator>
		<dc:rights>Copyright 2011</dc:rights>
		<dc:date>2011-01-19T20:20:43+00:00</dc:date>
		<admin:generatorAgent rdf:resource="http://expressionengine.com/" />
		<atom:link href="http://www.sencha.com/blog/comments-rss/690" rel="self" type="application/rss+xml" />
  
		
  
		<item>
      <title>Comment by Bipin</title>
      <description>@Ed The LoaderDemo doesn&#8217;t seems to be working when I changed ext&#45;bootstrap&#45;debug.js in your index.html to ext&#45;all&#45;debug.js or bootstrap.js from latest ext&#45;4.0.2a. I was running this off a web server.
Changing ext&#45;bootstrap&#45;debug.js made the src/* files inaccessible, as it started finding those file from the same location as index.html. And I didn&#8217;t see the Ext.Loader.basePath  mentioned in EXT JS 4 documentation.</description>
      <content:encoded><![CDATA[<p>@Ed The LoaderDemo doesn&#8217;t seems to be working when I changed ext-bootstrap-debug.js in your index.html to ext-all-debug.js or bootstrap.js from latest ext-4.0.2a. I was running this off a web server.<br />
Changing ext-bootstrap-debug.js made the src/* files inaccessible, as it started finding those file from the same location as index.html. And I didn&#8217;t see the Ext.Loader.basePath  mentioned in EXT JS 4 documentation.</p>]]></content:encoded>
      <pubDate>Fri, 22 Jul 2011 09:38 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:24359#date:09:38</guid>
    </item>
  
		<item>
      <title>Comment by Ebru</title>
      <description>Hi,
I need a help:( I want to access json data with ExtJs 4 but I can not do this.I can access json with Extjs 3 use Ext.data.JsonStore and I look the document of Ext 4 and I see there is not Ext.data.JsonStore ….HOW I ACCESS JSON DATA WITH EXTJS 4(?)
Please HELP….
Thanks…..</description>
      <content:encoded><![CDATA[<p>Hi,<br />
I need a help:( I want to access json data with ExtJs 4 but I can not do this.I can access json with Extjs 3 use Ext.data.JsonStore and I look the document of Ext 4 and I see there is not Ext.data.JsonStore ….HOW I ACCESS JSON DATA WITH EXTJS 4(?)<br />
Please HELP….<br />
Thanks…..</p>]]></content:encoded>
      <pubDate>Fri, 08 Jul 2011 06:26 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:23805#date:06:26</guid>
    </item>
  
		<item>
      <title>Comment by Ajsie</title>
      <description>Loading one file to the client and then realizing it has dependencies that need to be fetched is bad for the users that have to wait for multiple HTTP requests when it all should have been loaded with one request.

A suggestion is to look at how YUI solved this with YLS.

http://reid.github.com/decks/2011/bayjax/yls.html

In short its running a node.js server on that will calculate the dependencies when it receives a HTTP request and will load all files into the client.

Can&#8217;t ExtJS do the same in the future? Then dynamic loading won&#8217;t be just for development but for production too!</description>
      <content:encoded><![CDATA[<p>Loading one file to the client and then realizing it has dependencies that need to be fetched is bad for the users that have to wait for multiple HTTP requests when it all should have been loaded with one request.</p>

<p>A suggestion is to look at how YUI solved this with YLS.</p>

<p><a href="http://reid.github.com/decks/2011/bayjax/yls.html">http://reid.github.com/decks/2011/bayjax/yls.html</a></p>

<p>In short its running a node.js server on that will calculate the dependencies when it receives a HTTP request and will load all files into the client.</p>

<p>Can&#8217;t ExtJS do the same in the future? Then dynamic loading won&#8217;t be just for development but for production too!</p>]]></content:encoded>
      <pubDate>Mon, 27 Jun 2011 16:25 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:23484#date:16:25</guid>
    </item>
  
		<item>
      <title>Comment by samgfrias</title>
      <description>great work! tnks</description>
      <content:encoded><![CDATA[<p>great work! tnks <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Wed, 22 Jun 2011 19:48 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:23269#date:19:48</guid>
    </item>
  
		<item>
      <title>Comment by Raul Csj</title>
      <description>Wow! Great work! Dynamic Loading!!!!!!</description>
      <content:encoded><![CDATA[<p>Wow! Great work! Dynamic Loading!!!!!!</p>]]></content:encoded>
      <pubDate>Thu, 16 Jun 2011 02:37 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:22931#date:02:37</guid>
    </item>
  
		<item>
      <title>Comment by Josh Ohio</title>
      <description>camon, dojo had mixins for so long its not funny, its about time ExtJS caught up to dojo&#8217;s class system. What about dojo&#8217;s templating system? anytime soon?</description>
      <content:encoded><![CDATA[<p>camon, dojo had mixins for so long its not funny, its about time ExtJS caught up to dojo&#8217;s class system. What about dojo&#8217;s templating system? anytime soon?</p>]]></content:encoded>
      <pubDate>Mon, 23 May 2011 05:12 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:21716#date:05:12</guid>
    </item>
  
		<item>
      <title>Comment by Swarnendu De</title>
      <description>Its awesome. Liked the new class loading functionality and the default architecture. And providing the dynamic loading feature I think the best approach regarding ExtJS. I used to work with creating my own class loader for dynamically loading javascript files. This new Ext Loader will help a lot. Hope to see few examples using newest functionality of ExtJS 4.</description>
      <content:encoded><![CDATA[<p>Its awesome. Liked the new class loading functionality and the default architecture. And providing the dynamic loading feature I think the best approach regarding ExtJS. I used to work with creating my own class loader for dynamically loading javascript files. This new Ext Loader will help a lot. Hope to see few examples using newest functionality of ExtJS 4.</p>]]></content:encoded>
      <pubDate>Fri, 22 Apr 2011 07:40 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:19907#date:07:40</guid>
    </item>
  
		<item>
      <title>Comment by yiyu jia</title>
      <description>I have a question. if all classes are referenced by their string name as using Ext.define() instead of Ext.extend. Wont this be challenge for IDE editor vendor to implemented syntax highlighter? If defined class name is not highlighted or it can not be auto completed. Wont it cause more typo? 

Or, my question is, is there anybody here know a IDE editor which might support syntax highlight and code auto complete for class defined by Ext.define? Or, I will just carefully copy and paste to avoid typo?</description>
      <content:encoded><![CDATA[<p>I have a question. if all classes are referenced by their string name as using Ext.define() instead of Ext.extend. Wont this be challenge for IDE editor vendor to implemented syntax highlighter? If defined class name is not highlighted or it can not be auto completed. Wont it cause more typo? </p>

<p>Or, my question is, is there anybody here know a IDE editor which might support syntax highlight and code auto complete for class defined by Ext.define? Or, I will just carefully copy and paste to avoid typo?</p>]]></content:encoded>
      <pubDate>Mon, 11 Apr 2011 18:51 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:19481#date:18:51</guid>
    </item>
  
		<item>
      <title>Comment by Russ Jackson</title>
      <description>I did some more investigating on the above and discovered that the Loader class is included in ext&#45;core&#45;debug.js and that it needs to be enabled as described in the code/help, i.e include the following after loading ext&#45;core:

&amp;nbsp;   [removed]
&amp;nbsp;  &amp;nbsp;  &amp;nbsp; Ext.Loader.setConfig(&#123;
&amp;nbsp;  &amp;nbsp;  &amp;nbsp;  &amp;nbsp;  enabled: true,
&amp;nbsp;  &amp;nbsp;  &amp;nbsp;  &amp;nbsp;  paths : &#123;
&amp;nbsp;  &amp;nbsp;  &amp;nbsp;  &amp;nbsp;  &amp;nbsp;   &#8216;Ext&#8217; : &#8216;../common/src&#8217; // provide your own path to the Ext source files here
&amp;nbsp;  &amp;nbsp;  &amp;nbsp;  &amp;nbsp;  &#125;
&amp;nbsp;  &amp;nbsp;  &amp;nbsp; &#125;);&amp;nbsp;  &amp;nbsp;  &amp;nbsp; 
&amp;nbsp;   [removed]

However, enabling dynamic loading seems to have exposed several problems with the BarRenderer example and/or dynamic loading itself:

(1)&amp;nbsp; The loader did not like the Ext.Window alias used on line 2 of BarRenderer.js;&amp;nbsp; I changed it to: Ext.require([&#8216;Ext.window.Window&#8217; ...

(2)&amp;nbsp; Had to add Ext.data.JsonStore to the requires list on line 1 of example&#45;data.js

(3)&amp;nbsp; Once the above were resolved I received the following error:

[Ext.ClassManager] Cannot create an instance of unrecognized alias: widget.chart

Seems that perhaps there are some issues with dynamic loading or at least the charting API that need to be worked out?</description>
      <content:encoded><![CDATA[<p>I did some more investigating on the above and discovered that the Loader class is included in ext-core-debug.js and that it needs to be enabled as described in the code/help, i.e include the following after loading ext-core:</p>

<p>&nbsp;   [removed]<br />
&nbsp;  &nbsp;  &nbsp; Ext.Loader.setConfig(&#123;<br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  enabled: true,<br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  paths : &#123;<br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;   &#8216;Ext&#8217; : &#8216;../common/src&#8217; // provide your own path to the Ext source files here<br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &#125;<br />
&nbsp;  &nbsp;  &nbsp; &#125;);&nbsp;  &nbsp;  &nbsp; <br />
&nbsp;   [removed]</p>

<p>However, enabling dynamic loading seems to have exposed several problems with the BarRenderer example and/or dynamic loading itself:</p>

<p>(1)&nbsp; The loader did not like the Ext.Window alias used on line 2 of BarRenderer.js;&nbsp; I changed it to: Ext.require([&#8216;Ext.window.Window&#8217; ...</p>

<p>(2)&nbsp; Had to add Ext.data.JsonStore to the requires list on line 1 of example-data.js</p>

<p>(3)&nbsp; Once the above were resolved I received the following error:</p>

<p>[Ext.ClassManager] Cannot create an instance of unrecognized alias: widget.chart</p>

<p>Seems that perhaps there are some issues with dynamic loading or at least the charting API that need to be worked out?</p>]]></content:encoded>
      <pubDate>Tue, 29 Mar 2011 18:03 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:18927#date:18:03</guid>
    </item>
  
		<item>
      <title>Comment by Russ Jackson</title>
      <description>Hi, first of all &#45; very exciting.&amp;nbsp; If this works as advertised it will alleviate a big headache we sometimes encounter.

What are the bare minimum script files needed to get the dynamic loading working?&amp;nbsp; For example, what script tags would need to be included in order to get the Ext.require(&#8216;Ext.Window&#8217;, ... example above working?

I tried to experiment with the BarRenderer.html example and replaced the bootstrap.js script tag with an ext&#45;core.debug.js script tag (thus causing ext&#45;all&#45;debug.js to be omitted).&amp;nbsp; However, the chart does not appear in this case and via firebug I don&#8217;t see any chart classes being loaded, as defined at the top of BarRenderer.js:

Ext.require(&#8216;Ext.chart.*&#8217;);

Can you please explain?&amp;nbsp; 

TIA</description>
      <content:encoded><![CDATA[<p>Hi, first of all - very exciting.&nbsp; If this works as advertised it will alleviate a big headache we sometimes encounter.</p>

<p>What are the bare minimum script files needed to get the dynamic loading working?&nbsp; For example, what script tags would need to be included in order to get the Ext.require(&#8216;Ext.Window&#8217;, ... example above working?</p>

<p>I tried to experiment with the BarRenderer.html example and replaced the bootstrap.js script tag with an ext-core.debug.js script tag (thus causing ext-all-debug.js to be omitted).&nbsp; However, the chart does not appear in this case and via firebug I don&#8217;t see any chart classes being loaded, as defined at the top of BarRenderer.js:</p>

<p>Ext.require(&#8216;Ext.chart.*&#8217;);</p>

<p>Can you please explain?&nbsp; </p>

<p>TIA</p>]]></content:encoded>
      <pubDate>Tue, 29 Mar 2011 16:22 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:18923#date:16:22</guid>
    </item>
  
		<item>
      <title>Comment by lovesl</title>
      <description>Great !!&amp;nbsp;  Mixins is very good</description>
      <content:encoded><![CDATA[<p>Great !!&nbsp;  Mixins is very good</p>]]></content:encoded>
      <pubDate>Thu, 17 Mar 2011 09:04 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:18484#date:09:04</guid>
    </item>
  
		<item>
      <title>Comment by Rob Callahan</title>
      <description>I&#8217;ve been using ExtJS since 0.9 and I&#8217;ve always thought it was the best. I don&#8217;t know why folks continue to use libraries like JQuery, etc. when Ext has so much to offer. Thanks guys for your continued efforts. You guys rock!</description>
      <content:encoded><![CDATA[<p>I&#8217;ve been using ExtJS since 0.9 and I&#8217;ve always thought it was the best. I don&#8217;t know why folks continue to use libraries like JQuery, etc. when Ext has so much to offer. Thanks guys for your continued efforts. You guys rock!</p>]]></content:encoded>
      <pubDate>Tue, 15 Mar 2011 14:29 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:18391#date:14:29</guid>
    </item>
  
		<item>
      <title>Comment by Jevgeni</title>
      <description>You&#8217;re done a great work! I love ExtJS and already bought a pre&#45;sale license! Waiting for stable release impatiently.</description>
      <content:encoded><![CDATA[<p>You&#8217;re done a great work! I love ExtJS and already bought a pre-sale license! Waiting for stable release impatiently.</p>]]></content:encoded>
      <pubDate>Thu, 03 Mar 2011 21:46 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:17916#date:21:46</guid>
    </item>
  
		<item>
      <title>Comment by Phil_G</title>
      <description>I have the same question as Pablo, but I haven&#8217;t seen any discussion on it yet:

Pablo said: &#8220;Is there a standard for naming my own configuration options?
For example, if I’m extending Ext.Panel and adding subtitle:‘something’ I can’t know for sure that Ext won’t add a config option with the same name in the future.&#8221;

I&#8217;d like to echo this concern.&amp;nbsp; There needs to be a clear separation between Ext&#45;specific config options and my class&#8217;s methods and properties.&amp;nbsp; Something like the following is absolutely necessary to prevent conflicts and make the class system more robust:

Ext.Define( &#8216;Programmer&#8217;, &#123;
&amp;nbsp; //Ext config options go here
&amp;nbsp; extend: &#8216;Person&#8217;,
&amp;nbsp; requires: [&#8216;Blah.blah.Blah&#8217;]
&#125;, &#123;
&amp;nbsp; //methods and properties that get added to my class&#8217;s prototype go here
&amp;nbsp; eyeColor: &#8216;green&#8217;,
&amp;nbsp; hack: function() &#123;&#125;
&#125; );</description>
      <content:encoded><![CDATA[<p>I have the same question as Pablo, but I haven&#8217;t seen any discussion on it yet:</p>

<p>Pablo said: &#8220;Is there a standard for naming my own configuration options?<br />
For example, if I’m extending Ext.Panel and adding subtitle:‘something’ I can’t know for sure that Ext won’t add a config option with the same name in the future.&#8221;</p>

<p>I&#8217;d like to echo this concern.&nbsp; There needs to be a clear separation between Ext-specific config options and my class&#8217;s methods and properties.&nbsp; Something like the following is absolutely necessary to prevent conflicts and make the class system more robust:</p>

<p>Ext.Define( &#8216;Programmer&#8217;, &#123;<br />
&nbsp; //Ext config options go here<br />
&nbsp; extend: &#8216;Person&#8217;,<br />
&nbsp; requires: [&#8216;Blah.blah.Blah&#8217;]<br />
&#125;, &#123;<br />
&nbsp; //methods and properties that get added to my class&#8217;s prototype go here<br />
&nbsp; eyeColor: &#8216;green&#8217;,<br />
&nbsp; hack: function() &#123;&#125;<br />
&#125; );</p>]]></content:encoded>
      <pubDate>Wed, 16 Feb 2011 21:25 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:17398#date:21:25</guid>
    </item>
  
		<item>
      <title>Comment by Khebs</title>
      <description>I never thought that the design i made for so long, is the same model as ext is in now.. although, im using Package name space, but same pattern in creating class..

Package(&#8216;MyApp.ui.MDI&#8217;, &#123;
&amp;nbsp;   extends: &#8216;MyApp.ui&#8217;,
&amp;nbsp;   initialize: function() &#123;
&amp;nbsp;  &amp;nbsp;  &amp;nbsp; ...
&amp;nbsp;   &#125;
&#125;);

This is great! Also, i have my own mvc, can i still use ExtJS4 w/ it?</description>
      <content:encoded><![CDATA[<p>I never thought that the design i made for so long, is the same model as ext is in now.. although, im using Package name space, but same pattern in creating class..</p>

<p>Package(&#8216;MyApp.ui.MDI&#8217;, &#123;<br />
&nbsp;   extends: &#8216;MyApp.ui&#8217;,<br />
&nbsp;   initialize: function() &#123;<br />
&nbsp;  &nbsp;  &nbsp; ...<br />
&nbsp;   &#125;<br />
&#125;);</p>

<p>This is great! Also, i have my own mvc, can i still use ExtJS4 w/ it?</p>]]></content:encoded>
      <pubDate>Sun, 13 Feb 2011 13:30 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:17272#date:13:30</guid>
    </item>
  
		<item>
      <title>Comment by ken</title>
      <description>Lots of programmers complain about the bulk of extjs. Great that it is hosted on a CDN but at 1Mbps, an ~600KB ext&#45;all.js takes ~5sec to download at 1Mbps.</description>
      <content:encoded><![CDATA[<p>Lots of programmers complain about the bulk of extjs. Great that it is hosted on a CDN but at 1Mbps, an ~600KB ext-all.js takes ~5sec to download at 1Mbps.</p>]]></content:encoded>
      <pubDate>Thu, 10 Feb 2011 16:49 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:17191#date:16:49</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@Kevin it actually enables us to give slightly better errors in those cases. It&#8217;s really hard for a lot of newcomers to the framework when they see an &#8220;undefined is not a function&#8221; error caused by a bad Ext.extend call.

Aside from the other benefits of a stronger class model, the string&#45;based approach lets us generate those nicer error messages.</description>
      <content:encoded><![CDATA[<p>@Kevin it actually enables us to give slightly better errors in those cases. It&#8217;s really hard for a lot of newcomers to the framework when they see an &#8220;undefined is not a function&#8221; error caused by a bad Ext.extend call.</p>

<p>Aside from the other benefits of a stronger class model, the string-based approach lets us generate those nicer error messages.</p>]]></content:encoded>
      <pubDate>Tue, 25 Jan 2011 22:27 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16940#date:22:27</guid>
    </item>
  
		<item>
      <title>Comment by Nicolas BUI</title>
      <description>Hi,

I was sure that you will go to this direction after dissecting Sencha Touch source code few month ago.

While Ext.define(&#8216;namespace.MyClass&#8217; ...); is nice, there are although some little annoying caveats for IDE users out there.

They will lost the most important part of the completions features from their favorite IDE, don&#8217;t they ? 

The only IDE that parform well is  WebStorm (the best out there for JavaScript), but Eclipse  won&#8217;t be able to guess that namespace.MyClass exists.</description>
      <content:encoded><![CDATA[<p>Hi,</p>

<p>I was sure that you will go to this direction after dissecting Sencha Touch source code few month ago.</p>

<p>While Ext.define(&#8216;namespace.MyClass&#8217; ...); is nice, there are although some little annoying caveats for IDE users out there.</p>

<p>They will lost the most important part of the completions features from their favorite IDE, don&#8217;t they ? </p>

<p>The only IDE that parform well is  WebStorm (the best out there for JavaScript), but Eclipse  won&#8217;t be able to guess that namespace.MyClass exists.</p>]]></content:encoded>
      <pubDate>Tue, 25 Jan 2011 12:44 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16939#date:12:44</guid>
    </item>
  
		<item>
      <title>Comment by Kevin Cho</title>
      <description>I really liked the data package improvements but this one I&#8217;m slightly puzzled.&amp;nbsp; I do see that new way of creating new Class can reduce errors but at the same time..it&#8217;s really not.&amp;nbsp; If I truly don&#8217;t have the class I&#8217;m extending from&#8230; I rather see the error then covering up for later.&amp;nbsp; Also, mixins sounds like plugin as well.. In any case, I will play w/ these features when it arrives! Perhaps there are other hidden advantages I&#8217;m not seeing here.</description>
      <content:encoded><![CDATA[<p>I really liked the data package improvements but this one I&#8217;m slightly puzzled.&nbsp; I do see that new way of creating new Class can reduce errors but at the same time..it&#8217;s really not.&nbsp; If I truly don&#8217;t have the class I&#8217;m extending from&#8230; I rather see the error then covering up for later.&nbsp; Also, mixins sounds like plugin as well.. In any case, I will play w/ these features when it arrives! Perhaps there are other hidden advantages I&#8217;m not seeing here.</p>]]></content:encoded>
      <pubDate>Mon, 24 Jan 2011 14:43 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16938#date:14:43</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@Les actually, I would have preferred to pluralize &#8216;extend&#8217; into &#8216;extends&#8217; but extends is a reserved word in JavaScript.

The &#8216;requires&#8217; declaration can also take a string if you only require a single class. We usually offer this shortcut when passing arrays to various parts of the framework as it reads better if not forced into a single item array</description>
      <content:encoded><![CDATA[<p>@Les actually, I would have preferred to pluralize &#8216;extend&#8217; into &#8216;extends&#8217; but extends is a reserved word in JavaScript.</p>

<p>The &#8216;requires&#8217; declaration can also take a string if you only require a single class. We usually offer this shortcut when passing arrays to various parts of the framework as it reads better if not forced into a single item array</p>]]></content:encoded>
      <pubDate>Sat, 22 Jan 2011 22:28 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16937#date:22:28</guid>
    </item>
  
		<item>
      <title>Comment by Les</title>
      <description>Also, I&#8217;m curious why mixins is an object while require is an array.

Ext.define(‘Ext.Window’, &#123;
extend: ‘Ext.Panel’,
requires: [&#8216;Ext.util.MixedCollection&#8217;],
mixins: &#123;
draggable: ‘Ext.util.Draggable’
&#125;
&#125;);</description>
      <content:encoded><![CDATA[<p>Also, I&#8217;m curious why mixins is an object while require is an array.</p>

<p>Ext.define(‘Ext.Window’, &#123;<br />
extend: ‘Ext.Panel’,<br />
requires: [&#8216;Ext.util.MixedCollection&#8217;],<br />
mixins: &#123;<br />
draggable: ‘Ext.util.Draggable’<br />
&#125;<br />
&#125;);</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 22:52 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16936#date:22:52</guid>
    </item>
  
		<item>
      <title>Comment by Les</title>
      <description>For the sake of consistency and to make the code shorter) &#8220;requires:&#8221; should be just &#8220;require:&#8221; in the example below.

Ext.define(&#8216;Ext.Window&#8217;, &#123;
&amp;nbsp;   extend: &#8216;Ext.Panel&#8217;,
&amp;nbsp;   requires: [&#8216;Ext.util.MixedCollection&#8217;],
&amp;nbsp;   mixins: &#123;
&amp;nbsp;  &amp;nbsp;  &amp;nbsp; draggable: &#8216;Ext.util.Draggable&#8217;
&amp;nbsp;   &#125;
&#125;);</description>
      <content:encoded><![CDATA[<p>For the sake of consistency and to make the code shorter) &#8220;requires:&#8221; should be just &#8220;require:&#8221; in the example below.</p>

<p>Ext.define(&#8216;Ext.Window&#8217;, &#123;<br />
&nbsp;   extend: &#8216;Ext.Panel&#8217;,<br />
&nbsp;   requires: [&#8216;Ext.util.MixedCollection&#8217;],<br />
&nbsp;   mixins: &#123;<br />
&nbsp;  &nbsp;  &nbsp; draggable: &#8216;Ext.util.Draggable&#8217;<br />
&nbsp;   &#125;<br />
&#125;);</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 21:40 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16935#date:21:40</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@phil &#45; yep &#45; the cache buster is optional and is mainly there to make sure the browser doesn&#8217;t cache incorrectly when in development mode.

@Tim that&#8217;s right &#45; the dynamic loading is aimed at making development easier, once in production we still recommend rolling all of your application code into a single file to load it all at once

@Les it&#8217;s a lot easier now as the stack trace tells you which file caused the error instead of always showing some line in ext&#45;all&#45;debug.js</description>
      <content:encoded><![CDATA[<p>@phil - yep - the cache buster is optional and is mainly there to make sure the browser doesn&#8217;t cache incorrectly when in development mode.</p>

<p>@Tim that&#8217;s right - the dynamic loading is aimed at making development easier, once in production we still recommend rolling all of your application code into a single file to load it all at once</p>

<p>@Les it&#8217;s a lot easier now as the stack trace tells you which file caused the error instead of always showing some line in ext-all-debug.js</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 19:35 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16934#date:19:35</guid>
    </item>
  
		<item>
      <title>Comment by Les</title>
      <description>Looks like release 4 will be a winner 

One thing that bothers me when debugging Ext applications is that it&#8217;s not easy to tell what class was used to create a particular instance.

If I define a class Ext.define(&#8216;Sample.Musician&#8217;, &#123;..., I&#8217;d like to see a property in Firebug that would show e.g declaredClass: &#8216;Sample.Musician&#8217;.</description>
      <content:encoded><![CDATA[<p>Looks like release 4 will be a winner <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>

<p>One thing that bothers me when debugging Ext applications is that it&#8217;s not easy to tell what class was used to create a particular instance.</p>

<p>If I define a class Ext.define(&#8216;Sample.Musician&#8217;, &#123;..., I&#8217;d like to see a property in Firebug that would show e.g declaredClass: &#8216;Sample.Musician&#8217;.</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 15:20 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16933#date:15:20</guid>
    </item>
  
		<item>
      <title>Comment by Tim Toady</title>
      <description>I am really liking this.&amp;nbsp; You guys are moving in the right direction.&amp;nbsp; I can definitely see Ext growing in popularity with the improvements you keep bringing. 

Is the only issue against lazy loading in production latency?&amp;nbsp; The time it takes to load a script dynamically is shorter than the traditional web site pulling a new page. I understand having all the core features loaded up front, but in an application with large sections of code that might not even be used, doesn&#8217;t it make sense to load them dynamically in as few requests as possible?&amp;nbsp; (I&#8217;m not trying to argue. Just trying to learn)</description>
      <content:encoded><![CDATA[<p>I am really liking this.&nbsp; You guys are moving in the right direction.&nbsp; I can definitely see Ext growing in popularity with the improvements you keep bringing. </p>

<p>Is the only issue against lazy loading in production latency?&nbsp; The time it takes to load a script dynamically is shorter than the traditional web site pulling a new page. I understand having all the core features loaded up front, but in an application with large sections of code that might not even be used, doesn&#8217;t it make sense to load them dynamically in as few requests as possible?&nbsp; (I&#8217;m not trying to argue. Just trying to learn)</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 15:08 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16932#date:15:08</guid>
    </item>
  
		<item>
      <title>Comment by phil</title>
      <description>in this example, js loading use a disable caching feature.
i hope (and i suppose) that it will be a way to allow script caching ?</description>
      <content:encoded><![CDATA[<p>in this example, js loading use a disable caching feature.<br />
i hope (and i suppose) that it will be a way to allow script caching ?</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 09:28 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16931#date:09:28</guid>
    </item>
  
		<item>
      <title>Comment by Thomas Fritz</title>
      <description>Do not get my previous comment wrong. I am ExtJS user since yui&#45;ext and every company i worked so far since yui&#45;ext is using ExtJS now because i convinced them to use it.
I really like the effort in ExtJS 4.0 with Sass, dynamic Loading, the Plugin System, etc.. Great work. Great Software. Great Company!

But one weakness in my opinion is Senchas Communication with their customers/users about features, planned features, feedback and so on. I mean there is only a very minimalistic Roadmap. Dynamic Loading, Mixins is not on this list for example. Almost every Software Company has a Ticketing System for example where every user can create, comment and vote for tickets and with information about milestones and what tickets/Features are planned for what milestone. 
The point is that as a developer you have to know what feature will make it into the core of a software and when. If some feature will never be integrated into a software you have to create it for yourself  &#45; which is time consuming and therefore expensive. But when i know that a feature will be in the release i am not going to implement it for my own &#45; i would search for a story or ticket and give feedback about that planned feature, try to help and wait for the next release and use that part in the core. But that is only possible when we all know where to ask, where to look and where to give feedback. I know there are the forums but thats not the same. A forum gives not the same information.
 
Kind regards</description>
      <content:encoded><![CDATA[<p>Do not get my previous comment wrong. I am ExtJS user since yui-ext and every company i worked so far since yui-ext is using ExtJS now because i convinced them to use it.<br />
I really like the effort in ExtJS 4.0 with Sass, dynamic Loading, the Plugin System, etc.. Great work. Great Software. Great Company!</p>

<p>But one weakness in my opinion is Senchas Communication with their customers/users about features, planned features, feedback and so on. I mean there is only a very minimalistic Roadmap. Dynamic Loading, Mixins is not on this list for example. Almost every Software Company has a Ticketing System for example where every user can create, comment and vote for tickets and with information about milestones and what tickets/Features are planned for what milestone. <br />
The point is that as a developer you have to know what feature will make it into the core of a software and when. If some feature will never be integrated into a software you have to create it for yourself  - which is time consuming and therefore expensive. But when i know that a feature will be in the release i am not going to implement it for my own - i would search for a story or ticket and give feedback about that planned feature, try to help and wait for the next release and use that part in the core. But that is only possible when we all know where to ask, where to look and where to give feedback. I know there are the forums but thats not the same. A forum gives not the same information.<br />
 <br />
Kind regards</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 08:38 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16930#date:08:38</guid>
    </item>
  
		<item>
      <title>Comment by Thomas Fritz</title>
      <description>@Jacky Nguyen: I understand that this is only for development and every namespace could be used. But why not compatible with CommonJS. ExtJS would benefit from other tools outside and could be used together with other tools and vice versa. What about existing sources developed as CommonJS Modules. In such a case you would have again at least 2 different Loaders and you can not optimize them together.

Besides that, does Sencha has any Ticketing System where ExtJS Users can create tickets and so on. That would make it easier to ExtJS Users to see what is planned, what will change in the next versions and could post their wishes and feedback and then we could see when it is in a release. Others could vote too on a ticket. Then you would not get hundres of posts in the blog and forums with questions about ExtJS4 when you post some details in here.</description>
      <content:encoded><![CDATA[<p>@Jacky Nguyen: I understand that this is only for development and every namespace could be used. But why not compatible with CommonJS. ExtJS would benefit from other tools outside and could be used together with other tools and vice versa. What about existing sources developed as CommonJS Modules. In such a case you would have again at least 2 different Loaders and you can not optimize them together.</p>

<p>Besides that, does Sencha has any Ticketing System where ExtJS Users can create tickets and so on. That would make it easier to ExtJS Users to see what is planned, what will change in the next versions and could post their wishes and feedback and then we could see when it is in a release. Others could vote too on a ticket. Then you would not get hundres of posts in the blog and forums with questions about ExtJS4 when you post some details in here.</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 08:19 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16929#date:08:19</guid>
    </item>
  
		<item>
      <title>Comment by Nikolay</title>
      <description>Great, thanks for all!

We&#8217;re waiting for the release of Ext 4.</description>
      <content:encoded><![CDATA[<p>Great, thanks for all!</p>

<p>We&#8217;re waiting for the release of Ext 4.</p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 06:47 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16928#date:06:47</guid>
    </item>
  
		<item>
      <title>Comment by Valentin</title>
      <description>@Ed
it&#8217;s already running</description>
      <content:encoded><![CDATA[<p>@Ed<br />
it&#8217;s already running <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Fri, 21 Jan 2011 02:07 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16927#date:02:07</guid>
    </item>
  
		<item>
      <title>Comment by Jamie Avins</title>
      <description>@ christiaan

Stay tuned for more on the extensive use of sprites in 4.0.</description>
      <content:encoded><![CDATA[<p>@ christiaan</p>

<p>Stay tuned for more on the extensive use of sprites in 4.0.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 22:49 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16926#date:22:49</guid>
    </item>
  
		<item>
      <title>Comment by Steffen Hiller</title>
      <description>That sounds goood!</description>
      <content:encoded><![CDATA[<p>That sounds goood! <img src="/images/smileys/grin.gif" width="19" height="19" alt="grin" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 22:49 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16925#date:22:49</guid>
    </item>
  
		<item>
      <title>Comment by christiaan</title>
      <description>@Ed Spencer, if you&#8217;ve have always been against dynamic loading in production. And I asume thats partly because it&#8217;s a good thing to minimize the number of http request. Then I hope you have or will apply the same reasoning to loading images. That means natively support the use of a sprite for all icons of buttons, tabs, panels, windows without showing the adjacent images in the sprite. Do or will you in 4.0?</description>
      <content:encoded><![CDATA[<p>@Ed Spencer, if you&#8217;ve have always been against dynamic loading in production. And I asume thats partly because it&#8217;s a good thing to minimize the number of http request. Then I hope you have or will apply the same reasoning to loading images. That means natively support the use of a sprite for all icons of buttons, tabs, panels, windows without showing the adjacent images in the sprite. Do or will you in 4.0?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 22:42 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16924#date:22:42</guid>
    </item>
  
		<item>
      <title>Comment by Jacky Nguyen</title>
      <description>@Steffen Hiller: We have them implemented, just not mentioned in the blog post as we wanted to keep it short &amp;amp; concise. We&#8217;ll slowly reveal everything when Ext JS 4 is closer to release</description>
      <content:encoded><![CDATA[<p>@Steffen Hiller: We have them implemented, just not mentioned in the blog post as we wanted to keep it short &amp; concise. We&#8217;ll slowly reveal everything when Ext JS 4 is closer to release <img src="/images/smileys/wink.gif" width="19" height="19" alt="wink" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 21:38 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16923#date:21:38</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@Steffen I&#8217;ll think about adding this.apply&#8230; it&#8217;s kind of redundant but a few people have asked for it

Not such a fan of the alternative syntax though</description>
      <content:encoded><![CDATA[<p>@Steffen I&#8217;ll think about adding this.apply&#8230; it&#8217;s kind of redundant but a few people have asked for it</p>

<p>Not such a fan of the alternative syntax though</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 21:33 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16922#date:21:33</guid>
    </item>
  
		<item>
      <title>Comment by Steffen Hiller</title>
      <description>What about my 3 suggestions about reducing code and complexity? Not so good? :&#45;|</description>
      <content:encoded><![CDATA[<p>What about my 3 suggestions about reducing code and complexity? Not so good? :-|</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 21:23 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16921#date:21:23</guid>
    </item>
  
		<item>
      <title>Comment by Bruno Tavares</title>
      <description>Uow!!! What a coincidence, I&#8217;m using my Ext.require class since 2009 (: And it works exactly the same! hahaha

 http://www.extdesenv.com.br/en/tutoriais&#45;estudos/carregar&#45;codigo&#45;ext&#45;sob&#45;demanda/

Thanks god this funcionality was added to the core!</description>
      <content:encoded><![CDATA[<p>Uow!!! What a coincidence, I&#8217;m using my Ext.require class since 2009 (: And it works exactly the same! hahaha</p>

<p> <a href="http://www.extdesenv.com.br/en/tutoriais-estudos/carregar-codigo-ext-sob-demanda/">http://www.extdesenv.com.br/en/tutoriais-estudos/carregar-codigo-ext-sob-demanda/</a></p>

<p>Thanks god this funcionality was added to the core!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 21:21 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16920#date:21:21</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@Donald for example, if you want to make your non&#45;Window subclass draggable, use the Draggable mixin. If you want to enable sorting of child items, use the Sortable mixin.

@Andrew no support for that yet&#8230;

@Valentin thanks &#45; seems to be down at the moment though

@Luis soon!</description>
      <content:encoded><![CDATA[<p>@Donald for example, if you want to make your non-Window subclass draggable, use the Draggable mixin. If you want to enable sorting of child items, use the Sortable mixin.</p>

<p>@Andrew no support for that yet&#8230;</p>

<p>@Valentin thanks - seems to be down at the moment though</p>

<p>@Luis soon!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 20:44 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16919#date:20:44</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@James actually, we can now throw a meaningful error. Previously, the JavaScript engine would either throw a ReferenceError, or tell you that &#8220;undefined is not a function&#8221;. Now, we can throw a meaningful error like &#8220;Ext.Window could not be found&#8221;

@Conor we have always been against dynamic loading in production. We will continue to provide a complete ext&#45;all.js and the JSBuilder to enable developers to create their own builds easily.</description>
      <content:encoded><![CDATA[<p>@James actually, we can now throw a meaningful error. Previously, the JavaScript engine would either throw a ReferenceError, or tell you that &#8220;undefined is not a function&#8221;. Now, we can throw a meaningful error like &#8220;Ext.Window could not be found&#8221;</p>

<p>@Conor we have always been against dynamic loading in production. We will continue to provide a complete ext-all.js and the JSBuilder to enable developers to create their own builds easily.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 20:41 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16918#date:20:41</guid>
    </item>
  
		<item>
      <title>Comment by Jacky Nguyen</title>
      <description>Just to clarify for everyone who concerns about performance / latency of the dynamic dependency loading feature:

&#45; Dynamic loading of separate files only happen during *development* on your local machines, for  ease of debugging. When you&#8217;re ready to deploy for *production*, Ext.JSBGenerator will generate the jsb file &#40;JSBuilder manifest format&#41; right from your live application within milliseconds, so that you can build everything into just one single .js file. You can always get the latest jsb with one click, no command line script needed.

&#45; Ext.Loader is built to work with any namespace. When you define you own class, for example:

Ext.define(&#8216;My.own.Panel&#8217;, &#123;
&amp;nbsp;   extend: &#8216;Someone.else.Panel&#8217;,

&amp;nbsp;   ...
&#125;);

and that Someone.else.Panel:

Ext.define(&#8216;Someone.else.Panel&#8217;, &#123;
&amp;nbsp;   extend: &#8216;Ext.Panel&#8217;,

&amp;nbsp;   ...
&#125;);

Ext.Loader will load them in the correct sequence of Ext.Panel &#45;&amp;gt; Someone.else.Panel &#45;&amp;gt; My.own.Panel. Extending and contributing custom classes can&#8217;t be easier since you no longer need to remember what depends on / requires what. Ext.Loader takes care of everything for you. Again during production, all these non&#45;Ext classes will also be included into one single .js file thanks to Ext.JSBGenerator.</description>
      <content:encoded><![CDATA[<p>Just to clarify for everyone who concerns about performance / latency of the dynamic dependency loading feature:</p>

<p>- Dynamic loading of separate files only happen during *development* on your local machines, for  ease of debugging. When you&#8217;re ready to deploy for *production*, Ext.JSBGenerator will generate the jsb file &#40;JSBuilder manifest format&#41; right from your live application within milliseconds, so that you can build everything into just one single .js file. You can always get the latest jsb with one click, no command line script needed.</p>

<p>- Ext.Loader is built to work with any namespace. When you define you own class, for example:</p>

<p>Ext.define(&#8216;My.own.Panel&#8217;, &#123;<br />
&nbsp;   extend: &#8216;Someone.else.Panel&#8217;,</p>

<p>&nbsp;   ...<br />
&#125;);</p>

<p>and that Someone.else.Panel:</p>

<p>Ext.define(&#8216;Someone.else.Panel&#8217;, &#123;<br />
&nbsp;   extend: &#8216;Ext.Panel&#8217;,</p>

<p>&nbsp;   ...<br />
&#125;);</p>

<p>Ext.Loader will load them in the correct sequence of Ext.Panel -&gt; Someone.else.Panel -&gt; My.own.Panel. Extending and contributing custom classes can&#8217;t be easier since you no longer need to remember what depends on / requires what. Ext.Loader takes care of everything for you. Again during production, all these non-Ext classes will also be included into one single .js file thanks to Ext.JSBGenerator.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 20:38 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16917#date:20:38</guid>
    </item>
  
		<item>
      <title>Comment by Christiaan</title>
      <description>I think Arthur Kay&#8217;s question is interesting to understand mixins. I&#8217;m sure lots of developers have checked mixins out on wikipedia. At least I did.

How does plugins and mixins compare?</description>
      <content:encoded><![CDATA[<p>I think Arthur Kay&#8217;s question is interesting to understand mixins. I&#8217;m sure lots of developers have checked mixins out on wikipedia. At least I did.</p>

<p>How does plugins and mixins compare?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 18:40 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16916#date:18:40</guid>
    </item>
  
		<item>
      <title>Comment by Thomas Fritz</title>
      <description>Very good. Great work!
Especially the Loading on demand feature is very great and will make development and optimization a lot easier!
But why did Ext not follow CommonJS &#8220;Standards&#8221; (like http://requirejs.org Loader) used by many other projects too. This would be a killer feature. This would allow for easy integration of ExtJS in existing projects, or in the future integrate other commonjs modules / packages within ExtJS! Think of it before you release ExtJS 4.0 PLEASE!! 

Something related to that is with the restructuring of the source files and the on&#45;demand loading of source files it would be possible and very handy to get the required object as parameter of the callback function of Ext.require &#45; like in other CommonJS Loader. The Performance of the whole framework would be better too, because references are within the current function scope chain. This approach would also allow to not have any global Ext variable, you are rather injecting your dependencies.

PLEASE PLEASE PLEASE!!!</description>
      <content:encoded><![CDATA[<p>Very good. Great work!<br />
Especially the Loading on demand feature is very great and will make development and optimization a lot easier!<br />
But why did Ext not follow CommonJS &#8220;Standards&#8221; (like <a href="http://requirejs.org">http://requirejs.org</a> Loader) used by many other projects too. This would be a killer feature. This would allow for easy integration of ExtJS in existing projects, or in the future integrate other commonjs modules / packages within ExtJS! Think of it before you release ExtJS 4.0 PLEASE!! <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>

<p>Something related to that is with the restructuring of the source files and the on-demand loading of source files it would be possible and very handy to get the required object as parameter of the callback function of Ext.require - like in other CommonJS Loader. The Performance of the whole framework would be better too, because references are within the current function scope chain. This approach would also allow to not have any global Ext variable, you are rather injecting your dependencies.</p>

<p>PLEASE PLEASE PLEASE!!! <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 16:22 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16915#date:16:22</guid>
    </item>
  
		<item>
      <title>Comment by Donald</title>
      <description>Can you guys give an example of using mixins pertaining to say an extended Ext widget&#8230;and not a generic instrument&#8230;.I am not 100% following what this new &#8220;mixins&#8221; thing is and how one would use it.</description>
      <content:encoded><![CDATA[<p>Can you guys give an example of using mixins pertaining to say an extended Ext widget&#8230;and not a generic instrument&#8230;.I am not 100% following what this new &#8220;mixins&#8221; thing is and how one would use it.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 15:00 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16914#date:15:00</guid>
    </item>
  
		<item>
      <title>Comment by Andrew</title>
      <description>This is awesome! You guys rock. Will we be able to dig into the dynamic loader to multiplex requests for multiple classes into 1?</description>
      <content:encoded><![CDATA[<p>This is awesome! You guys rock. Will we be able to dig into the dynamic loader to multiplex requests for multiple classes into 1?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 14:33 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16913#date:14:33</guid>
    </item>
  
		<item>
      <title>Comment by David</title>
      <description>Bravo!</description>
      <content:encoded><![CDATA[<p>Bravo!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 13:39 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16912#date:13:39</guid>
    </item>
  
		<item>
      <title>Comment by Florian</title>
      <description>Really nice stuff! I would also recommend to optimize the writing efforts. That what I see as a contraint.

I like:

&#45; this.apply( instead of Ext.apply
&#45; this.superclass instead of MyApp&#8230;...superclass (should be possible with this scope?)

what I would like so see the most is

Ext.define(&#8216;MyClass &amp;lt; MyBaseClass, MyBaseClass2&#039;, &#123;



Thanks for all your hard work guys! Looking forward to kickoff queued projects with the upcoming beta


Flo</description>
      <content:encoded><![CDATA[<p>Really nice stuff! I would also recommend to optimize the writing efforts. That what I see as a contraint.</p>

<p>I like:</p>

<p>- this.apply( instead of Ext.apply<br />
- this.superclass instead of MyApp&#8230;...superclass (should be possible with this scope?)</p>

<p>what I would like so see the most is</p>

<p>Ext.define(&#8216;MyClass &lt; MyBaseClass, MyBaseClass2&#039;, &#123;</p>



<p>Thanks for all your hard work guys! Looking forward to kickoff queued projects with the upcoming beta</p>

<p><br />
Flo</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 13:23 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16911#date:13:23</guid>
    </item>
  
		<item>
      <title>Comment by Abdel</title>
      <description>Excited to see the beta version finally rolling out! I did some coding with the new class system and was wondering:

1. If I create a mixin in one class, why is its constructor of mixin not called?

2. If I apply default values to mixin variables ( thru config&#123;&#125; ), why are they not accessible thru getter methods?</description>
      <content:encoded><![CDATA[<p>Excited to see the beta version finally rolling out! I did some coding with the new class system and was wondering:</p>

<p>1. If I create a mixin in one class, why is its constructor of mixin not called?</p>

<p>2. If I apply default values to mixin variables ( thru config&#123;&#125; ), why are they not accessible thru getter methods?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 12:43 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16910#date:12:43</guid>
    </item>
  
		<item>
      <title>Comment by Valentin</title>
      <description>Resumen en español:

ExtJS4: Las novedades</description>
      <content:encoded><![CDATA[<p>Resumen en español:</p>

<p><a href="http://blog.aijoona.com/2011/01/20/extjs4-las-novedades/">ExtJS4: Las novedades</a></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 12:23 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16909#date:12:23</guid>
    </item>
  
		<item>
      <title>Comment by Luis Confraria</title>
      <description>This is great.

This kind of articles are just what i wanted to start with extjs4.

Please write one about the new tools and the recommended application architecture.

Thank you so much for your excellent work.</description>
      <content:encoded><![CDATA[<p>This is great.</p>

<p>This kind of articles are just what i wanted to start with extjs4.</p>

<p>Please write one about the new tools and the recommended application architecture.</p>

<p>Thank you so much for your excellent work.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 12:16 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16908#date:12:16</guid>
    </item>
  
		<item>
      <title>Comment by Westy</title>
      <description>Good stuff, looking forward to the beta release!</description>
      <content:encoded><![CDATA[<p>Good stuff, looking forward to the beta release!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 11:39 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16907#date:11:39</guid>
    </item>
  
		<item>
      <title>Comment by chandru</title>
      <description>You people always amaze me!!!

thanks for all your efforts.

Cheers</description>
      <content:encoded><![CDATA[<p>You people always amaze me!!!</p>

<p>thanks for all your efforts.</p>

<p>Cheers</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 11:33 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16906#date:11:33</guid>
    </item>
  
		<item>
      <title>Comment by Conor</title>
      <description>@ed

As some of the previous posters had alluded to, the lazy loading is going to delay loading times due to latency etc.&amp;nbsp; 

You say that &#8220;We have a tool which builds this file for your application based on the dependency order calculated by the dynamic loader.&#8221;

Few questions:

Can you clarify if this is for developers only or whether developers should be bundling it with code to clients with the release?
Will it handle app code (not just the framework)?
How are you going to deal with the various server backends (PHP, ASP, Perl, Java etc).

At the risk of sounding overly negative, but the thought of a component like a combo box lazy loading a dozen superclasses is seriously going to impact on load times!</description>
      <content:encoded><![CDATA[<p>@ed</p>

<p>As some of the previous posters had alluded to, the lazy loading is going to delay loading times due to latency etc.&nbsp; </p>

<p>You say that &#8220;We have a tool which builds this file for your application based on the dependency order calculated by the dynamic loader.&#8221;</p>

<p>Few questions:</p>

<p>Can you clarify if this is for developers only or whether developers should be bundling it with code to clients with the release?<br />
Will it handle app code (not just the framework)?<br />
How are you going to deal with the various server backends (PHP, ASP, Perl, Java etc).</p>

<p>At the risk of sounding overly negative, but the thought of a component like a combo box lazy loading a dozen superclasses is seriously going to impact on load times!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 11:20 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16905#date:11:20</guid>
    </item>
  
		<item>
      <title>Comment by Wemerson</title>
      <description>really nice! Thanksss</description>
      <content:encoded><![CDATA[<p>really nice! Thanksss</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 10:58 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16904#date:10:58</guid>
    </item>
  
		<item>
      <title>Comment by James Hughes</title>
      <description>&#8220;If Ext.Window were not defined when we create our class, we would get an error and our application might crash. Similarly, if the MyApp namespace is not defined we’d also get an error. These problems are both resolved with the new way to define classes&#8221;

Surely during development you WANT errors to happen?&amp;nbsp; This sort of issue should never make it into production (and if it does you should sack your testers).&amp;nbsp; Throwing errors at that point surely makes the bug easier to find, and swallowing these errors will make debugging/development harder?</description>
      <content:encoded><![CDATA[<p>&#8220;If Ext.Window were not defined when we create our class, we would get an error and our application might crash. Similarly, if the MyApp namespace is not defined we’d also get an error. These problems are both resolved with the new way to define classes&#8221;</p>

<p>Surely during development you WANT errors to happen?&nbsp; This sort of issue should never make it into production (and if it does you should sack your testers).&nbsp; Throwing errors at that point surely makes the bug easier to find, and swallowing these errors will make debugging/development harder?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 10:30 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16903#date:10:30</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@Joeri currently the loader just loads JavaScript; we may extend its scope to include CSS though.

@hafizan nice to see someone digging through the code  The bootstrap file there is a custom build purely for that example. It’s really just a subset of Ext Core and is the minimal set of code required to make the class system work

@Dmitry Data happens to be the subject of the next post – stay tuned!</description>
      <content:encoded><![CDATA[<p>@Joeri currently the loader just loads JavaScript; we may extend its scope to include CSS though.</p>

<p>@hafizan nice to see someone digging through the code <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /> The bootstrap file there is a custom build purely for that example. It’s really just a subset of Ext Core and is the minimal set of code required to make the class system work</p>

<p>@Dmitry Data happens to be the subject of the next post – stay tuned!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 10:26 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16902#date:10:26</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@frank that&#8217;s awesome &#45; thank you!

@papandreou fortunately, both of your suspicions are unfounded. The lazy loading scheme is easy to extend to any code using or building on the framework, including application code. If you open up the live demo you&#8217;ll see it loading non&#45;framework code in every example.

As explained in the post and the code samples, all of the dependency graph information is found in the source code &#45; take a look at the extends, mixins and requires declarations in the samples above and on the live demo page.</description>
      <content:encoded><![CDATA[<p>@frank that&#8217;s awesome - thank you!</p>

<p>@papandreou fortunately, both of your suspicions are unfounded. The lazy loading scheme is easy to extend to any code using or building on the framework, including application code. If you open up the live demo you&#8217;ll see it loading non-framework code in every example.</p>

<p>As explained in the post and the code samples, all of the dependency graph information is found in the source code - take a look at the extends, mixins and requires declarations in the samples above and on the live demo page.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 10:25 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16901#date:10:25</guid>
    </item>
  
		<item>
      <title>Comment by Behrang</title>
      <description>Wow! Nice job!</description>
      <content:encoded><![CDATA[<p>Wow! Nice job!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 09:49 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16900#date:09:49</guid>
    </item>
  
		<item>
      <title>Comment by Thomas</title>
      <description>Wow, it finally works just like in qooxdoo &#45; just not as powerful</description>
      <content:encoded><![CDATA[<p>Wow, it finally works just like in <a href="http://qooxdoo.org/">qooxdoo</a> - just not as powerful <img src="/images/smileys/raspberry.gif" width="19" height="19" alt="raspberry" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 09:42 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16899#date:09:42</guid>
    </item>
  
		<item>
      <title>Comment by papandreou</title>
      <description>While this looks like a nice initiative, I have a few suspicions based on the code samples:

1) Looks like the lazy loading scheme only applies to the ExtJS framework itself. How about lazy loading of parts of our own code? Will we have to invent yet another scheme?
2) I&#8217;m guessing the dependency graph for the framework resides in a jsb3 file somewhere. Please put them into the code itself, it&#8217;s way more flexible and maintainable.

Most of these objections have already been brought up a priori in this thread: http://www.sencha.com/forum/showthread.php?113604&#45;ExtJS&#45;Dependencies&#45;(Performance&#45;Optimizations)&amp;amp;p=546669#post546669

Best regards,
Papandreou</description>
      <content:encoded><![CDATA[<p>While this looks like a nice initiative, I have a few suspicions based on the code samples:</p>

<p>1) Looks like the lazy loading scheme only applies to the ExtJS framework itself. How about lazy loading of parts of our own code? Will we have to invent yet another scheme?<br />
2) I&#8217;m guessing the dependency graph for the framework resides in a jsb3 file somewhere. Please put them into the code itself, it&#8217;s way more flexible and maintainable.</p>

<p>Most of these objections have already been brought up a priori in this thread: <a href="http://www.sencha.com/forum/showthread.php?113604-ExtJS-Dependencies-Performance-Optimizations">http://www.sencha.com/forum/showthread.php?113604-ExtJS-Dependencies-(Performance-Optimizations</a>)&amp;p=546669#post546669</p>

<p>Best regards,<br />
Papandreou</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 09:33 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16898#date:09:33</guid>
    </item>
  
		<item>
      <title>Comment by Joeri</title>
      <description>Will the new class loader also be able to load stylesheets on demand, or is the &#8220;best practice&#8221; still to bundle all your styles up into one big stylesheet?</description>
      <content:encoded><![CDATA[<p>Will the new class loader also be able to load stylesheets on demand, or is the &#8220;best practice&#8221; still to bundle all your styles up into one big stylesheet?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 08:55 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16897#date:08:55</guid>
    </item>
  
		<item>
      <title>Comment by Nickolay Platonov</title>
      <description>@Alexander Hartmaier (abraxxa)

There is already Moose in JavaScript, its called Joose:

http://bit.ly/joose_manual</description>
      <content:encoded><![CDATA[<p>@Alexander Hartmaier (abraxxa)</p>

<p>There is already Moose in JavaScript, its called Joose:</p>

<p><a href="http://bit.ly/joose_manual">http://bit.ly/joose_manual</a></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 08:18 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16896#date:08:18</guid>
    </item>
  
		<item>
      <title>Comment by Dmitriy Pashkevich</title>
      <description>Great new features! Dying to see the new Data package!</description>
      <content:encoded><![CDATA[<p>Great new features! Dying to see the new Data package!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 07:58 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16895#date:07:58</guid>
    </item>
  
		<item>
      <title>Comment by hafizan</title>
      <description>Are ext&#45;bootstrap official ext4 ext.js equivilant?</description>
      <content:encoded><![CDATA[<p>Are ext-bootstrap official ext4 ext.js equivilant?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 07:46 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16894#date:07:46</guid>
    </item>
  
		<item>
      <title>Comment by frank</title>
      <description>@Ed Spencer
Sorry, just finished translation thentoo hurry post comment to paste the link. There&#8217;s the link:
http://blog.csdn.net/zhangxin09/archive/2011/01/20/6154696.aspx</description>
      <content:encoded><![CDATA[<p>@Ed Spencer<br />
Sorry, just finished translation thentoo hurry post comment to paste the link. There&#8217;s the link:<br />
<a href="http://blog.csdn.net/zhangxin09/archive/2011/01/20/6154696.aspx">http://blog.csdn.net/zhangxin09/archive/2011/01/20/6154696.aspx</a></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 07:09 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16893#date:07:09</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@frank do you have a link?</description>
      <content:encoded><![CDATA[<p>@frank do you have a link?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 06:56 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16892#date:06:56</guid>
    </item>
  
		<item>
      <title>Comment by frank</title>
      <description>For Chinese Users?please read my blog for translation:?Ext JS 4?????????????? Count down to Ext JS 4: Dynamic Loading and New Class System?</description>
      <content:encoded><![CDATA[<p>For Chinese Users?please read my blog for translation:?Ext JS 4?????????????? Count down to Ext JS 4: Dynamic Loading and New Class System?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 06:35 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16891#date:06:35</guid>
    </item>
  
		<item>
      <title>Comment by boolean</title>
      <description>new ideas come on, changes happening.</description>
      <content:encoded><![CDATA[<p>new ideas come on, changes happening.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 06:29 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16890#date:06:29</guid>
    </item>
  
		<item>
      <title>Comment by frank</title>
      <description>Nice job! Man!</description>
      <content:encoded><![CDATA[<p>Nice job! Man!</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 05:47 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16889#date:05:47</guid>
    </item>
  
		<item>
      <title>Comment by Fredric Berling</title>
      <description>Great stuff ! 
You are doing it right.</description>
      <content:encoded><![CDATA[<p>Great stuff ! <br />
You are doing it right.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 03:49 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16888#date:03:49</guid>
    </item>
  
		<item>
      <title>Comment by Kevin</title>
      <description>Will Ext&#8217;s modules support loading from a CommonJS module loader?</description>
      <content:encoded><![CDATA[<p>Will Ext&#8217;s modules support loading from a CommonJS module loader?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 03:23 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16887#date:03:23</guid>
    </item>
  
		<item>
      <title>Comment by Chinabuffet</title>
      <description>Looking at some of the code, it appears that the synchronous downloads use synchronous XHR&#8230; will this require that the files being loaded are on the same domain so that it&#8217;s not interpreted as XSS?</description>
      <content:encoded><![CDATA[<p>Looking at some of the code, it appears that the synchronous downloads use synchronous XHR&#8230; will this require that the files being loaded are on the same domain so that it&#8217;s not interpreted as XSS?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 02:42 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16886#date:02:42</guid>
    </item>
  
		<item>
      <title>Comment by Steffen Hiller</title>
      <description>Great stuff!

What about &#8220;Ext.class(&#8216;App.LoginWindow &amp;lt; Ext.Window&#039;, &#123;&#125;);&amp;quot;? 

Also would like &amp;quot;this.apply(&#123;&#125;)&amp;quot; instead of &amp;quot;Ext.apply(this, &#123;&#125;)&amp;quot;

And what about &amp;quot;MyApp.LoginWindow.superclass.initComponent.apply(this, arguments);&amp;quot;?
Can you not make that go away, like with &amp;quot;this.super(&#039;initComponent&#039;, arguments)&amp;quot; or something? Just a spontaneous idea. It could go through the base classes and call that method for every base class with the &amp;quot;this&amp;quot; scope.

But still looking forward to Ext JS 4!</description>
      <content:encoded><![CDATA[<p>Great stuff!</p>

<p>What about &#8220;Ext.class(&#8216;App.LoginWindow &lt; Ext.Window&#039;, &#123;&#125;);&quot;? <img src="/images/smileys/tongue_laugh.gif" width="19" height="19" alt="tongue laugh" style="border:0;" /></p>

<p>Also would like &quot;this.apply(&#123;&#125;)&quot; instead of &quot;Ext.apply(this, &#123;&#125;)&quot;</p>

<p>And what about &quot;MyApp.LoginWindow.superclass.initComponent.apply(this, arguments);&quot;?<br />
Can you not make that go away, like with &quot;this.super(&#039;initComponent&#039;, arguments)&quot; or something? Just a spontaneous idea. It could go through the base classes and call that method for every base class with the &quot;this&quot; scope.</p>

<p>But still looking forward to Ext JS 4! <img src="/images/smileys/grin.gif" width="19" height="19" alt="grin" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 02:19 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16885#date:02:19</guid>
    </item>
  
		<item>
      <title>Comment by Blacktiger</title>
      <description>I was playing around with it today and wondered how to add a config option that has an empty string as the default value. It looks like the empty string is ignored and the get functions return undefined until you explicitly define one. Maybe there isn&#8217;t a good reason to do that, but I was just wondering about the design decision.</description>
      <content:encoded><![CDATA[<p>I was playing around with it today and wondered how to add a config option that has an empty string as the default value. It looks like the empty string is ignored and the get functions return undefined until you explicitly define one. Maybe there isn&#8217;t a good reason to do that, but I was just wondering about the design decision.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 02:11 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16884#date:02:11</guid>
    </item>
  
		<item>
      <title>Comment by AMp</title>
      <description>how about obfuscate ExtJS?</description>
      <content:encoded><![CDATA[<p>how about obfuscate ExtJS?</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 02:11 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16883#date:02:11</guid>
    </item>
  
		<item>
      <title>Comment by NoraBora</title>
      <description>Wow, 2011 will be the year of Sencha. I expect Sencha Touch can absorb good things from ExtJS 4. Cheers~</description>
      <content:encoded><![CDATA[<p>Wow, 2011 will be the year of Sencha. I expect Sencha Touch can absorb good things from ExtJS 4. Cheers~</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 01:59 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16882#date:01:59</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@gevik we&#8217;re working on updating the documentation generator to account for the enhanced functionality

@Stoober interesting idea, we&#8217;ll think about it

@Isaac The class loader checks to see if a class is already present so won&#8217;t reload it if it&#8217;s already on the page

@Tane coming soon

@Steven I think we have an even better solution but don&#8217;t want to place a spoiler here  In any case, we&#8217;ll still support loading of packages</description>
      <content:encoded><![CDATA[<p>@gevik we&#8217;re working on updating the documentation generator to account for the enhanced functionality</p>

<p>@Stoober interesting idea, we&#8217;ll think about it</p>

<p>@Isaac The class loader checks to see if a class is already present so won&#8217;t reload it if it&#8217;s already on the page</p>

<p>@Tane coming soon</p>

<p>@Steven I think we have an even better solution but don&#8217;t want to place a spoiler here <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /> In any case, we&#8217;ll still support loading of packages</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 01:18 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16881#date:01:18</guid>
    </item>
  
		<item>
      <title>Comment by Steven Roussey</title>
      <description>I have a few comments (surprise!):

1) Awesome!

2) Having looked at what other people do with mixins, you might consider the same path: dynamically change the prototype chain to include the mixin. We can discuss why this is good in some sidebar or expert discussion.

3) Packages: often in a deploy scenario, you don&#8217;t want a ext&#45;all.js. Nor a zillion files to download situation. You want something in the middle.

&#45;s</description>
      <content:encoded><![CDATA[<p>I have a few comments (surprise!):</p>

<p>1) Awesome!</p>

<p>2) Having looked at what other people do with mixins, you might consider the same path: dynamically change the prototype chain to include the mixin. We can discuss why this is good in some sidebar or expert discussion.</p>

<p>3) Packages: often in a deploy scenario, you don&#8217;t want a ext-all.js. Nor a zillion files to download situation. You want something in the middle.</p>

<p>-s</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 01:02 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16880#date:01:02</guid>
    </item>
  
		<item>
      <title>Comment by Tane Piper</title>
      <description>These new features look fantastic &#45; I just implemented my own version of the dynamic loading using require.js but ran into the issues you describe with some modules not loading in time &#45; hopefully you&#8217;re solution will fix this.

While I understand your release cycle, is there any possibility of early access for some developers with the known caveat that some things may not work?
We&#8217;re currently holding off on some features in our build until ExtJS4 but were expecting the beta package around now based on the information released at SenchaCon. These delays will unfortunately have a major knock&#45;on effect in re&#45;factoring the existing code to ExtJS4 and building in some of the new features around Ext.draw and the new TreeStore stuff that we really need.</description>
      <content:encoded><![CDATA[<p>These new features look fantastic - I just implemented my own version of the dynamic loading using require.js but ran into the issues you describe with some modules not loading in time - hopefully you&#8217;re solution will fix this.</p>

<p>While I understand your release cycle, is there any possibility of early access for some developers with the known caveat that some things may not work?<br />
We&#8217;re currently holding off on some features in our build until ExtJS4 but were expecting the beta package around now based on the information released at SenchaCon. These delays will unfortunately have a major knock-on effect in re-factoring the existing code to ExtJS4 and building in some of the new features around Ext.draw and the new TreeStore stuff that we really need.</p>]]></content:encoded>
      <pubDate>Thu, 20 Jan 2011 00:04 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16879#date:00:04</guid>
    </item>
  
		<item>
      <title>Comment by Isaac Peraza</title>
      <description>Thank you very much to all members of ExtJs and I look forward to the release date of the beta version 4.0 of ExtJS.

My opinion of the post. I think for this new class system we perform some tests to evaluate how convenient it is to be doing many recursive calls to bring multiple files, but I think it has advantages on the other side as class inheritance and able to build a better design pattern .

If I can believe that one little step before sending the files to load, which is to validate if the class is being requested as part of the document and if it is to avoid making another call to include the requested file.

sorry for my English, but I prefer to err by not being part of this great community.</description>
      <content:encoded><![CDATA[<p>Thank you very much to all members of ExtJs and I look forward to the release date of the beta version 4.0 of ExtJS.</p>

<p>My opinion of the post. I think for this new class system we perform some tests to evaluate how convenient it is to be doing many recursive calls to bring multiple files, but I think it has advantages on the other side as class inheritance and able to build a better design pattern .</p>

<p>If I can believe that one little step before sending the files to load, which is to validate if the class is being requested as part of the document and if it is to avoid making another call to include the requested file.</p>

<p>sorry for my English, but I prefer to err by not being part of this great community.</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 23:52 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16878#date:23:52</guid>
    </item>
  
		<item>
      <title>Comment by Stoober</title>
      <description>I like the look of this!

In regard to the auto setters and getters for configuration items, are you including or would you consider including auto events also?

For your example of the config item &#8220;title&#8221;, an event &#8220;onChangeTitle&#8221; (and perhaps a &#8220;beforeChangeTitle&#8221; event also) would be registered and (possibly) fired by the default &#8220;setTitle&#8221; or &#8220;applyTitle&#8221; function.

This would be similar to functionality in YUI which allows all configuration items to have change events.</description>
      <content:encoded><![CDATA[<p>I like the look of this!</p>

<p>In regard to the auto setters and getters for configuration items, are you including or would you consider including auto events also?</p>

<p>For your example of the config item &#8220;title&#8221;, an event &#8220;onChangeTitle&#8221; (and perhaps a &#8220;beforeChangeTitle&#8221; event also) would be registered and (possibly) fired by the default &#8220;setTitle&#8221; or &#8220;applyTitle&#8221; function.</p>

<p>This would be similar to functionality in YUI which allows all configuration items to have change events.</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 23:39 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16877#date:23:39</guid>
    </item>
  
		<item>
      <title>Comment by Javier Rincon</title>
      <description>Great, it looks like we will need a lot of time to understand the new features. But i cant wait to start with it&#8230;</description>
      <content:encoded><![CDATA[<p>Great, it looks like we will need a lot of time to understand the new features. But i cant wait to start with it&#8230;</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 23:16 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16876#date:23:16</guid>
    </item>
  
		<item>
      <title>Comment by gevik</title>
      <description>It looks great. But we should not forget that the new version is basically a completely new product and probably requires a lot of digging even for advanced (component) developers. I am very happy with the new development. Thank you 

Just a side question.. Will the documentation style stay the same? In other words, can we still use ext&#45;doc to generate docs for ExtJS 4 stuff?</description>
      <content:encoded><![CDATA[<p>It looks great. But we should not forget that the new version is basically a completely new product and probably requires a lot of digging even for advanced (component) developers. I am very happy with the new development. Thank you <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>

<p>Just a side question.. Will the documentation style stay the same? In other words, can we still use ext-doc to generate docs for ExtJS 4 stuff?</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:57 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16875#date:22:57</guid>
    </item>
  
		<item>
      <title>Comment by Crysfel</title>
      <description>This is amazing! I can&#8217;t wait to start playing around with the new library</description>
      <content:encoded><![CDATA[<p>This is amazing! I can&#8217;t wait to start playing around with the new library <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:42 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16874#date:22:42</guid>
    </item>
  
		<item>
      <title>Comment by camelCase</title>
      <description>I am considering trying to get the old ExtSharp project functioning with ExtJS 4 so I can express some portions of a new ExtJS RIA app in C# code. In the broadest terms has anything changed in ExtJS 4 to make this a non starter? I understand that my first step would be to run the ExtSharp parser over the new V4 Ext code to build equivalent C# class interfaces to the ExtJS class library.</description>
      <content:encoded><![CDATA[<p>I am considering trying to get the old ExtSharp project functioning with ExtJS 4 so I can express some portions of a new ExtJS RIA app in C# code. In the broadest terms has anything changed in ExtJS 4 to make this a non starter? I understand that my first step would be to run the ExtSharp parser over the new V4 Ext code to build equivalent C# class interfaces to the ExtJS class library.</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:31 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16873#date:22:31</guid>
    </item>
  
		<item>
      <title>Comment by bigfish</title>
      <description>Ah, I see that Jerry already raised this idea, and Ed answered .. nevermind</description>
      <content:encoded><![CDATA[<p>Ah, I see that Jerry already raised this idea, and Ed answered .. nevermind <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:18 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16872#date:22:18</guid>
    </item>
  
		<item>
      <title>Comment by bigfish</title>
      <description>It&#8217;s great to &#8216;requires&#8217; and lazy loading of classes&#8217; dependencies! While this is very nice for debugging, and helps reduce overall bandwidth in production, it does mean an increase in the number of requests to the server and hence potential slowness due to network latency. What would be the next logical step is to integrate this modularity into JSBuilder so that it can create a single .js file with only the code required for your app&#8230; perhaps you are already working on this ?</description>
      <content:encoded><![CDATA[<p>It&#8217;s great to &#8216;requires&#8217; and lazy loading of classes&#8217; dependencies! While this is very nice for debugging, and helps reduce overall bandwidth in production, it does mean an increase in the number of requests to the server and hence potential slowness due to network latency. What would be the next logical step is to integrate this modularity into JSBuilder so that it can create a single .js file with only the code required for your app&#8230; perhaps you are already working on this ?</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:16 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16871#date:22:16</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@Jerry yes on all counts &#45; stay tuned</description>
      <content:encoded><![CDATA[<p>@Jerry yes on all counts - stay tuned</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:14 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16870#date:22:14</guid>
    </item>
  
		<item>
      <title>Comment by Jerry</title>
      <description>@ed &amp;amp; @aaron We use the full extjs library in end consumer production on a travel website engine(http://vacations.banffinfo.com/) so we have direct experience with these load time challenges. 

We noticed that we need the initial libraries loaded on the fly asap to bring up the full screen (as soon as possible) but then after the first idleness we need to bring up the rest. There is no reason to wait until they are needed. That will only cause slowness later.

Therefore, can you facilitate a custom build process where you define libraries as pre&#45;load (needed for first ui) separate from idle&#45;load (needed on subsequent or actions off of the first)

And finally, is this going to wrap into Sencha Touch? The great merge of all electronics is well underway&#8212;everything is getting displays with browsers&#8212;and of course nobody wants to double program and you have a great individual library for both but not combined.

Cheers,
Jerry</description>
      <content:encoded><![CDATA[<p>@ed &amp; @aaron We use the full extjs library in end consumer production on a travel website engine(<a href="http://vacations.banffinfo.com/">http://vacations.banffinfo.com/</a>) so we have direct experience with these load time challenges. </p>

<p>We noticed that we need the initial libraries loaded on the fly asap to bring up the full screen (as soon as possible) but then after the first idleness we need to bring up the rest. There is no reason to wait until they are needed. That will only cause slowness later.</p>

<p>Therefore, can you facilitate a custom build process where you define libraries as pre-load (needed for first ui) separate from idle-load (needed on subsequent or actions off of the first)</p>

<p>And finally, is this going to wrap into Sencha Touch? The great merge of all electronics is well underway&#8212;everything is getting displays with browsers&#8212;and of course nobody wants to double program and you have a great individual library for both but not combined.</p>

<p>Cheers,<br />
Jerry</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:13 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16869#date:22:13</guid>
    </item>
  
		<item>
      <title>Comment by Phil</title>
      <description>Looks great, I look forward to fewer lines of boiler plate code.</description>
      <content:encoded><![CDATA[<p>Looks great, I look forward to fewer lines of boiler plate code.</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:12 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16868#date:22:12</guid>
    </item>
  
		<item>
      <title>Comment by Jay garcia</title>
      <description>A complete game changer!!!</description>
      <content:encoded><![CDATA[<p>A complete game changer!!!</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 22:04 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16867#date:22:04</guid>
    </item>
  
		<item>
      <title>Comment by stolsma</title>
      <description>Very nice to see a sort of module/class loading in ExtJS 4. What I don&#8217;t understand is why Sencha didn&#8217;t follow CommonJS &#8216;drafts&#8217; somewhat more and just implemented another type of module implementation&#8230;. I think a missed chance for integrating Server and Client side code&#8230;</description>
      <content:encoded><![CDATA[<p>Very nice to see a sort of module/class loading in ExtJS 4. What I don&#8217;t understand is why Sencha didn&#8217;t follow CommonJS &#8216;drafts&#8217; somewhat more and just implemented another type of module implementation&#8230;. I think a missed chance for integrating Server and Client side code&#8230;</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:55 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16866#date:21:55</guid>
    </item>
  
		<item>
      <title>Comment by P?emek</title>
      <description>I feel the difference in meaning but in function, it looks the same for me. Mixins aren&#8217;t interfaces because they contains implementation. So it looks like the new class inherits from &#8216;extended&#8217; class and from mixins.</description>
      <content:encoded><![CDATA[<p>I feel the difference in meaning but in function, it looks the same for me. Mixins aren&#8217;t interfaces because they contains implementation. So it looks like the new class inherits from &#8216;extended&#8217; class and from mixins.</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:54 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16865#date:21:54</guid>
    </item>
  
		<item>
      <title>Comment by Alexander Hartmaier (abraxxa)</title>
      <description>@P?emek: extend is interitance, mixins are &#8216;features&#8217; that are added to a class.
You can read a good explanation in the Moose docs: http://search.cpan.org/~drolsky/Moose&#45;1.21/lib/Moose/Manual/Concepts.pod#Role</description>
      <content:encoded><![CDATA[<p>@P?emek: extend is interitance, mixins are &#8216;features&#8217; that are added to a class.<br />
You can read a good explanation in the Moose docs: <a href="http://search.cpan.org/~drolsky/Moose-1.21/lib/Moose/Manual/Concepts.pod#Role">http://search.cpan.org/~drolsky/Moose-1.21/lib/Moose/Manual/Concepts.pod#Role</a></p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:45 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16864#date:21:45</guid>
    </item>
  
		<item>
      <title>Comment by Alexander Hartmaier (abraxxa)</title>
      <description>Will it be possible to declare required methods for mixins (roles or whatever you call them) or use them as traits (specify which should be applied at instantiation?</description>
      <content:encoded><![CDATA[<p>Will it be possible to declare required methods for mixins (roles or whatever you call them) or use them as traits (specify which should be applied at instantiation?</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:43 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16863#date:21:43</guid>
    </item>
  
		<item>
      <title>Comment by P?emek</title>
      <description>What is the difference between &#8216;extend&#8217; and &#8216;mixins&#8217;?</description>
      <content:encoded><![CDATA[<p>What is the difference between &#8216;extend&#8217; and &#8216;mixins&#8217;?</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:41 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16862#date:21:41</guid>
    </item>
  
		<item>
      <title>Comment by Loiane</title>
      <description>Loved it!
We want more!</description>
      <content:encoded><![CDATA[<p>Loved it!<br />
We want more! <img src="/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:40 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16861#date:21:40</guid>
    </item>
  
		<item>
      <title>Comment by Ed Spencer</title>
      <description>@pablo we&#8217;re suggesting using dynamic loading in development mode only, but still building a single application file for production use. We have a tool which builds this file for your application based on the dependency order calculated by the dynamic loader. Production speed has always been paramount to us

@Harley mixins won&#8217;t override existing methods. If a mixin function wasn&#8217;t applied you can easily get to it with this.getMixin(&#8216;guitar&#8217;).playGuitar()

@Greg the mixin name is the for the purpose just mentioned to Harley. I think we&#8217;ll also provide a more concise way of declaring mixins</description>
      <content:encoded><![CDATA[<p>@pablo we&#8217;re suggesting using dynamic loading in development mode only, but still building a single application file for production use. We have a tool which builds this file for your application based on the dependency order calculated by the dynamic loader. Production speed has always been paramount to us</p>

<p>@Harley mixins won&#8217;t override existing methods. If a mixin function wasn&#8217;t applied you can easily get to it with this.getMixin(&#8216;guitar&#8217;).playGuitar()</p>

<p>@Greg the mixin name is the for the purpose just mentioned to Harley. I think we&#8217;ll also provide a more concise way of declaring mixins</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:36 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16860#date:21:36</guid>
    </item>
  
		<item>
      <title>Comment by Arthur Kay</title>
      <description>Very cool stuff! I can&#8217;t wait until the full beta is available so I can start playing with it!

One question&#8230; are mixins basically the same thing as plugins in ExtJS 3.x?</description>
      <content:encoded><![CDATA[<p>Very cool stuff! I can&#8217;t wait until the full beta is available so I can start playing with it!</p>

<p>One question&#8230; are mixins basically the same thing as plugins in ExtJS 3.x?</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:33 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16859#date:21:33</guid>
    </item>
  
		<item>
      <title>Comment by pablo</title>
      <description>@Aaron How will it make creating a custom lighter build easier if it&#8217;s a client&#45;side feature?
As I see it, instead of loading one file the app will automatically load many files and will introduce unnecessary latency.
Frameworks are starting to use data&#45;urls when possible to reduce the latency of loading images but here you add a latency instead of reducing it.
Wouldn&#8217;t a simple script that scans an extjs based app and generate a custom build for it be simpler and more efficient?</description>
      <content:encoded><![CDATA[<p>@Aaron How will it make creating a custom lighter build easier if it&#8217;s a client-side feature?<br />
As I see it, instead of loading one file the app will automatically load many files and will introduce unnecessary latency.<br />
Frameworks are starting to use data-urls when possible to reduce the latency of loading images but here you add a latency instead of reducing it.<br />
Wouldn&#8217;t a simple script that scans an extjs based app and generate a custom build for it be simpler and more efficient?</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:31 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16858#date:21:31</guid>
    </item>
  
		<item>
      <title>Comment by Harley</title>
      <description>How are conflicting names handled for various mixins?&amp;nbsp; For example, the CanPlayDrum and CanPlayGuitar mixins both have a &#8216;play&#8217; method.&amp;nbsp; If I add both of these mixins to a class, what happens when I execute the &#8216;play&#8217; method?</description>
      <content:encoded><![CDATA[<p>How are conflicting names handled for various mixins?&nbsp; For example, the CanPlayDrum and CanPlayGuitar mixins both have a &#8216;play&#8217; method.&nbsp; If I add both of these mixins to a class, what happens when I execute the &#8216;play&#8217; method?</p>]]></content:encoded>
      <pubDate>Wed, 19 Jan 2011 21:29 GMT</pubDate>
      <guid isPermaLink="false">http://www.sencha.com/blog//countdown-to-ext-js-4-dynamic-loading-and-new-class-system#id:16857#date:21:29</guid>
    </item>
  
		
	</channel>
</rss>