1. #1
    Sencha User
    Join Date
    Nov 2010
    Posts
    11
    Vote Rating
    1
    zmonster is on a distinguished road

      1  

    Default Differences between Sencha Touch and Ext JS

    Differences between Sencha Touch and Ext JS


    Hello,

    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

  2. #2
    Sencha User
    Join Date
    Nov 2010
    Posts
    11
    Vote Rating
    1
    zmonster is on a distinguished road

      0  

    Default


    4. We are considering using Sencha to develop mobile apps, and we really like the Ext GWT feature set (allowing code written in pure Java). Will Ext GWT perform just as well on mobile platforms as Sencha Touch will? What do you get with Sencha Touch (UI/feature wise) that you don't get from Ext GWT?

  3. #3
    Sencha - Ext JS Dev Team evant's Avatar
    Join Date
    Apr 2007
    Location
    Sydney, Australia
    Posts
    17,164
    Vote Rating
    674
    evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute

      0  

    Default


    1) No, not everything will work. For example the grid relies on having a scrollable div, which mobile browsers don't support. Also think about things like menus, tooltips.

    2) It's not really to do with speed, Touch is just optimized to take advantage of the features mobile browsers offer, as well as widgets to cater for the smaller screen real estate.

    3) The data package in Touch will be used in Ext 4, which is why there's a break between the two. The idea is to share as much code as possible between the libs.

    4) Again, you will miss the mobile experience if you use GXT/Ext, you'll be trying to use desktop style widgets for mobile devices. In the end, the users won't get the same ease of use Touch provides for these devices.
    Evan Trimboli
    Sencha Developer
    Twitter - @evantrimboli
    Don't be afraid of the source code!

  4. #4
    Sencha User
    Join Date
    Nov 2010
    Posts
    11
    Vote Rating
    1
    zmonster is on a distinguished road

      0  

    Default


    Thank you for the clarification.

    1. Ok, so what happens when you try to run a Ext JS app on mobile? I assume it might display, but won't function properly?

    3. Ok, so it sounds like Ext JS is "based" more on Sencha Touch, than the reverse (which is what I assumed). It follows that Sencha Touch generally defines the more 'base' APIs, and Ext JS is a richer desktop experience? When will Ext JS 4 be released, and what other packages will eventually be shared between the two?

    4. Ok, so Are there plans for a Java/GWT version of Sencha Touch? I hope so, because I see much value in being able to code in pure Java. We rely on being able to code in Java, use our preferred Java IDE, and take advantage of the Java debugger, which is why I would very much like to base our mobile development on Java rather than JavaScript.

    And along those same lines, does Google market GWT as mainly a "desktop" client environment? I'm wondering if Google is planning on a "mobile" version of GWT?

    - Eric

  5. #5
    Ext JS Premium Member smokeman's Avatar
    Join Date
    Jul 2007
    Posts
    475
    Vote Rating
    2
    smokeman is on a distinguished road

      0  

    Default


    I can't speak to any of this, but on 3. no Extjs has been around, and gone through 3 major code revisions, and tons of minor revisions, all before jtouch, now "sencha touch" was brought into the fold. What Evan said was the data package in touch will be used in Extjs4, so there is starting to be the sharing of code, and libraries between the 2. Just a warning, that ExtJS is not based on touch.

  6. #6
    Sencha - Community Support Team edspencer's Avatar
    Join Date
    Jan 2009
    Location
    Palo Alto, California
    Posts
    1,939
    Vote Rating
    9
    edspencer is a jewel in the rough edspencer is a jewel in the rough edspencer is a jewel in the rough

      0  

    Default


    At the risk of repeating what Evan has already said, it breaks down like this:

    There is a common Sencha Platform which contains all of the logic packages (data, layout, utility classes etc). Ext JS 4 and Sencha Touch are both simply view layers on top of Platform. Sencha Touch is optimized for mobile touch devices, Ext JS 4 is optimized for desktop browsers.

    There is no attempt made to made ST work well on desktop or EXT JS 4 work well on mobile devices - these require fundamentally different approaches when it comes to UI.

    Neither product is built on the other. The closest you could get is to say that Platform is the daddy, Touch and Ext JS 4 are the children and Ext JS 3 is the mad old uncle who inspired the whole thing.
    Ext JS Senior Software Architect
    Personal Blog: http://edspencer.net
    Twitter: http://twitter.com/edspencer
    Github: http://github.com/edspencer

  7. #7
    Sencha - Architect Dev Team aconran's Avatar
    Join Date
    Mar 2007
    Posts
    9,445
    Vote Rating
    129
    aconran is a splendid one to behold aconran is a splendid one to behold aconran is a splendid one to behold aconran is a splendid one to behold aconran is a splendid one to behold aconran is a splendid one to behold aconran is a splendid one to behold

      0  

    Default


    Quote Originally Posted by edspencer View Post
    Neither product is built on the other. The closest you could get is to say that Platform is the daddy, Touch and Ext JS 4 are the children and Ext JS 3 is the mad old uncle who inspired the whole thing.
    Great words Ed.
    Aaron Conran
    @aconran
    Sencha Architect Development Team

  8. #8
    Sencha - Community Support Team jay@moduscreate.com's Avatar
    Join Date
    Mar 2007
    Location
    DC Area =)
    Posts
    16,364
    Vote Rating
    81
    jay@moduscreate.com is a name known to all jay@moduscreate.com is a name known to all jay@moduscreate.com is a name known to all jay@moduscreate.com is a name known to all jay@moduscreate.com is a name known to all jay@moduscreate.com is a name known to all

      0  

    Default


    Quote Originally Posted by edspencer View Post
    Neither product is built on the other. The closest you could get is to say that Platform is the daddy, Touch and Ext JS 4 are the children and Ext JS 3 is the mad old uncle who inspired the whole thing.
    Can we get that on the front page?

  9. #9
    Ext JS Premium Member JTM's Avatar
    Join Date
    Mar 2007
    Location
    Plymouth, MI
    Posts
    50
    Vote Rating
    0
    JTM is on a distinguished road

      0  

    Default


    Quote Originally Posted by edspencer View Post
    There is a common Sencha Platform which contains all of the logic packages (data, layout, utility classes etc). Ext JS 4 and Sencha Touch are both simply view layers on top of Platform. Sencha Touch is optimized for mobile touch devices, Ext JS 4 is optimized for desktop browsers.

    There is no attempt made to made ST work well on desktop or EXT JS 4 work well on mobile devices - these require fundamentally different approaches when it comes to UI.

    Neither product is built on the other. The closest you could get is to say that Platform is the daddy, Touch and Ext JS 4 are the children and Ext JS 3 is the mad old uncle who inspired the whole thing.
    Thanks, Ed. This helps.

    This implies a level of separation that I don't currently see. Does this mean that we will eventually have a "core" set of code that could be included in both a desktop and mobile application, with the specific UI widgets built upon that?

    In our case, we have a good deal of custom "core" code built for our desktop applications (for instance, DWR readers and proxies), that I would like to re-use for the mobile application. It seems like the core concepts of Stores, Data Models, etc. *should* be consistent between the two, but I do not currently see a way to re-use the ExtJS extensions w/ Touch.

    EDIT: I see I should have read further up. It sounds like ExtJS 4 is what I am looking for, and in the meantime there will be a lot of cruft.

  10. #10
    Sencha User
    Join Date
    Dec 2012
    Posts
    3
    Vote Rating
    0
    wayne_m is on a distinguished road

      0  

    Default


    ....I'm new to Sencha Touch & ExtJs (but quite interested in learning more about them) and so far I've loaded the online ExtJs kitchensink in my mobile browser - it looked and felt like a mobile site, the experience was pretty good I'd say. On the back-end however, I understand that Sencha Touch framework will not connect to an external database while ExtJs will. For the sake of allowing the user to have their data available to them no matter where they are or which device they are using, ExtJs may be a better choice. If your application heavily relies on additional features like swipes, pinch & zooming etc. then Sencha Touch is the better choice.


    ....that's my 2 cents

Similar Threads

  1. Replies: 10
    Last Post: 20 Jan 2012, 10:10 AM
  2. Sencha Touch/EXT JS newbie
    By gwthompson in forum Sencha Touch 1.x: Discussion
    Replies: 5
    Last Post: 13 Sep 2011, 10:38 PM
  3. Could Ext Js and Sencha Touch work together?
    By handitan in forum Sencha Touch 1.x: Discussion
    Replies: 3
    Last Post: 26 Apr 2011, 1:25 PM
  4. Ext JS and Sencha Touch!
    By mcamer in forum Sencha Touch 1.x: Discussion
    Replies: 8
    Last Post: 1 Dec 2010, 10:19 AM

Thread Participants: 8