1. #1
    Sencha User farion's Avatar
    Join Date
    Feb 2008
    Location
    Karlsruhe, Germany
    Posts
    75
    Vote Rating
    10
    farion will become famous soon enough

      1  

    Default Relation between SenchaTouch 2 and ExtJS4

    Relation between SenchaTouch 2 and ExtJS4


    Hi,

    we are evaluating the use of SenchaTouch 2 and ExtJS for a web application project. The project will have a desktop version (maybe ExtJS) and a touch version (maybe SenchaTouch).

    A big part of logic have to be implemented in JS. GUI and platform independent logic: client/server communication, plugins to access our services (e.g. Authentication) or data handling etc.

    So the question is: Is there a shared part, we can use for both plattforms? It seems, that a lot is equal, similiar or different. E.g. the class system seems to be equal, the store system is different. But the important point is, that the overlap is not defined. We do not want to build our software on our speculations .

    ExtCore stucks at version 3 and is not part of ExtJS 4 and SenchaTouch 2. We found ext-core.js and ext-foundation.js in ExtJS 4. But both files are not available in SenchaTouch 2, as far as we see. Is this correct?

    The current solutions for our requirements:
    - Implementing the logic twice (with ExtJS and SenchaTouch)
    - Use plain JS
    - Use another Framework for shared functionality.

    Are these the only valid solutions or is there an official and reliable way to implement things for both Sencha Frameworks?

    Best regards
    farion

  2. #2
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    37,547
    Vote Rating
    872
    mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute

      0  

    Default


    The biggest issue is that Sencha Touch 2 uses a config object that automatically creates getters and setters but that is where the config properties go. Ext JS 4 doesn't use this.
    Mitchell Simoens @SenchaMitch
    Sencha Inc, Senior Forum Manager
    ________________
    Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
    https://github.com/mitchellsimoens

    Think my support is good? Get more personalized support via a support subscription. https://www.sencha.com/store/

    Need more help with your app? Hire Sencha Services services@sencha.com

    Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is in print!

    When posting code, please use BBCode's CODE tags.

  3. #3
    Sencha User farion's Avatar
    Join Date
    Feb 2008
    Location
    Karlsruhe, Germany
    Posts
    75
    Vote Rating
    10
    farion will become famous soon enough

      0  

    Default


    For that problem, we already found a workaround. An own define method which applies the config - stuff to the ExtJs4 Objects. The bigger problem is that the parameters do not match, even in the non-gui classes. As I mentioned, it is important, that we can rely on something. So there is no official shared part? Are there any plans for that?

    Best Regards
    Farion

  4. #4
    Ext JS Premium Member
    Join Date
    Apr 2011
    Location
    Dallas, TX
    Posts
    204
    Vote Rating
    2
    Justin Noel is on a distinguished road

      0  

    Default


    Quote Originally Posted by mitchellsimoens View Post
    The biggest issue is that Sencha Touch 2 uses a config object that automatically creates getters and setters but that is where the config properties go. Ext JS 4 doesn't use this.
    Doesn't 4.1 support the config object that creates automatic getters and setters?

    I guess I should say "won't 4.1 ...." if it comes out of beta?

  5. #5
    Sencha User farion's Avatar
    Join Date
    Feb 2008
    Location
    Karlsruhe, Germany
    Posts
    75
    Vote Rating
    10
    farion will become famous soon enough

      0  

    Default


    Currently the config object is not in ExtJS 4.1 Beta2.

    I read about a "Sencha Platform".
    E.g. http://www.sencha.com/forum/showthre...235-Ext-Core-4 or here http://vimeo.com/17733892. At 2:30 Ed Spencer talked about a foundation for both frameworks.

    I did not search for differences, but the code of basic classes (classes I would expect in sencha platform) looks different for me. Here are two examples, I stumbled over:
    - Ext.data.reader.Json: In ExtJS the property for the root node is called "root" in SenchaTouch it is "rootProperty".
    - Ext.data.proxy.Ajax.doRequest() differs completely, so it is impossible to overwrite this method in an extended proxy object.

    For me it looks like Sencha Touch differs apart from ExtJS.

    Is the "Sencha Platform" real or will become real? Is there an official statement?

    farion

  6. #6
    Ext JS Premium Member
    Join Date
    Apr 2011
    Location
    Dallas, TX
    Posts
    204
    Vote Rating
    2
    Justin Noel is on a distinguished road

      0  

    Default


    Quote Originally Posted by farion View Post
    Currently the config object is not in ExtJS 4.1 Beta2.
    That's what has me so confused.

    Why then this :
    Note: this is a new feature of the upcoming Ext JS 4.1+ and Sencha Touch 2.0+. Ext JS 4.0 does not make use of this feature.
    per http://www.sencha.com/learn/sencha-class-system . Serious, 4.1b2 does not yet have it but it is still being advertised as of 11/29/11?

    2. Configuration
    In Ext JS 4, we introduce a dedicated config property that gets processed by the powerful Ext.Class pre-processors before the class is created. Features include:

    Configurations are completely encapsulated from other class members
    Getter and setter, methods for every config property are automatically generated into the class' prototype during class creation if the class does not have these methods already defined.
    An apply method is also generated for every config property. The auto-generated setter method calls the apply method internally before setting the value. Override the apply method for a config property if you need to run custom logic before setting the value. If apply does not return a value then the setter will not set the value. For an example see applyTitle below.
    : This was written when ExtJS 4 was announced! Why is this stuff even in the docs and the learning materials if it isn't even true??

  7. #7
    Sencha User farion's Avatar
    Join Date
    Feb 2008
    Location
    Karlsruhe, Germany
    Posts
    75
    Vote Rating
    10
    farion will become famous soon enough

      0  

    Default


    I'm still waiting for an official statement about Sencha Platform. I have to made a statement to my boss . What is the plan? Or is Sencha Platform dead?

    Best Regards
    farion

  8. #8
    Sencha Premium Member
    Join Date
    Dec 2011
    Posts
    4
    Vote Rating
    1
    slavah is on a distinguished road

      1  

    Default


    Same problems here, i was digging around sencha&extjs vs other frameworks such as Sproutcore, Ender, Knockout, Backbone, RX
    And 2 things bothers me the most with ExtJS:
    • no way to move your code base from extJS to mobile Sencha framework.
    • no way I know of to cleanly separate Web UI from JS logic - to have a separate layer of html/css plus javascript binding layer (event pipes, templates, jquery, pick your choice) to your App logic written in ExtJS
    I could not find any definitive answer on code migration from ExtJS to Sencha.

  9. #9
    Sencha Premium Member
    Join Date
    Jan 2012
    Posts
    48
    Vote Rating
    1
    hiroprotagonist is on a distinguished road

      0  

    Default answers?

    answers?


    Hi guys,

    I am also evaluating how both products interact. It seems to me it is a brilliant strategy for sencha to keep these products on the same base to make development of mobile and desktop applications easy. Thus one more argument for using sencha touch over jquery mobile/ others when also developing for desktop is well documented and "easy" to do. (even when there are things that have to be different due to the kind of target device, but isn't that what frameworks are for?)

    I would really appreciate some comments about the future plans, and how Sencha thinks where the journey goes to.

    hiro.

  10. #10
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    37,547
    Vote Rating
    872
    mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute

      0  

    Default


    My Ux.locale.Manager and Ux.data.WebSocketStore both work with Sencha Touch 2 and Ext JS 4.1.0 using the same code.
    Mitchell Simoens @SenchaMitch
    Sencha Inc, Senior Forum Manager
    ________________
    Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
    https://github.com/mitchellsimoens

    Think my support is good? Get more personalized support via a support subscription. https://www.sencha.com/store/

    Need more help with your app? Hire Sencha Services services@sencha.com

    Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is in print!

    When posting code, please use BBCode's CODE tags.