I posted a previous question about Sencha Touch vs. Ext JS and received some good feedback. However, I continue to be confused about the two different platforms.

1. Can Ext JS code be run on mobile devices and will all widgest work (I assume the answer is YES)?

2. Is Sencha Touch optimized for mobile devices, where Ext JS may run more slowly (I assume the answer is YES)?

3. Why isn't Sencha Touch based on exactly the same APIs as Ext JS, where applicable? For example, I'm looking at the Ext.data package on both Sencha Touch and Ext JS. I would assume a package at this low level would be exactly the same on Touch as it is on Ext JS, but they differ quite considerably. Specifically, the "Store" class is a top-level class in Ext JS, but it is a subclass of AbstractStore on the Touch platform. Ext JS doesn't even define AbstractStore (which means it does not provide a TreeStore subclass, for example, like Touch does). Also, on Touch the Store caches "Model" objects, whereas on Ext JS the Store caches "Record" objects. A completely different structure. My basic question is, why the differences (this, and other major differences)? I would have assumed, and preferred, a consistent set of APIs...

Thank You,
- Eric