Latest Ext JS 7.8 is now available. Learn more

Day in the Life of an Ext JS Developer: Your Questions Answered

March 21, 2018 156 Views
Show

In our recent webinar, A Day in the Life of an Ext JS Developer, we provided a technical introduction for how to get started with Ext JS quickly, including tips and best practices. The Q&A session was very lively, so we’re sharing some of the discussion here. We’ll be repeating the same webinar on Thursday, March 22nd at 10am PDT if you’d like to join us live and take advantage of the opportunity to ask your questions about this powerful javascript web framework.

Register Now

What is the best practice to improve the build process and minimize the time to deploy to production, for a large extjs application?

Our best practice for building production versions of Ext JS applications is Sencha Cmd, specifically ‘sencha app build production’. Also, if you need to break your application into smaller parts for production, take a look at our Dynamic Package Loader, at https://github.com/sencha/package-loader

What is the best practices for building JavaEE web apps that are utilizing Maven as a build tool and dependency management?

Since Sencha Cmd is used as the build tool for Ext JS and it is a command line tool, you can call Sencha Cmd in any build environment that can call a command line tool. Also, here is a video on the Sencha site that might help: http://video.sencha.com/watch/YGrD8e49jy1YUdF9PJNrQR

Up until now, if we had to build a desktop app we would chose Classic and for mobile, Modern. Then, recently, we had the option to work only with Modern and just target desktop or mobile, this is a nice step forward. What does the future hold? If Classic will be getting Modern components, and Modern will be getting Localization, Classic components, are you going to merge the two? If we are starting a new project, which one should we chose for better platform coverage? What would be the platform targets for Classic and Modern once you have parity?

We recommend the Modern toolkit for new projects that require better cross-platform devices support and Classic toolkit that require better desktop support. There are several features in the Classic toolkit that make it the right choice: support for IE8 / 9 / 10, and accessibility and support for RTL (Right-to-left) languages. If your application needs these capabilities, then Classic is the way to go. As part of roadmap, we are also looking at merging toolkits in the future.

What is the plan for universal apps for Architect?

Architect is a compelling low-code solution that helps bring Ext JS apps to the marketplace even faster. We are actively exploring ways to make development with Architect more seamless and accessible. By the end of 2018, we’re hoping to remove some of the major roadblocks to natural Architect development workflows – stay tuned for more as this develops! If you have any thoughts or feedback about Architect, please email us at [email protected].

Universal apps with two modern targets, is that new?

We will continue to support Universal applications where the Desktop is using the Classic Toolkit and the Mobile device is using the Modern Toolkit. As we bring the Modern Toolkit desktop components to parity with the Classic Toolkit, you can build a Universal application completely with the Modern toolkit (as long as you do not need to support Internet Explorer, Aria/Screen Readers, Right to Left Languages – those are only supported in the Classic Toolkit).

Will nodejs packages be available to use with the new Sencha cmd?

We are working on creating NPM packages for Ext JS as part of Ext JS 6.6, planned for the end of the Second Quarter, 2018.

Besides Controllers, Models and Stores, are there any other types of objects that could be shared? Does Sencha first look in the shared folder by default to retrieve the objects? Are there predefined templates?

If you are building a Universal application completely with the Modern Toolkit, then even some types of views are potentially sharable, typically using a responsive layout. Take a look at the first page of the Coworkee application we built: http://examples.sencha.com/coworkee/#home

Can you comment on upgrading from 6.0.2 to 6.5.3? Are there folder structure changes or functions we should consider?

For every release, we publish What’s new, Release Notes and an Upgrade guide, for example, here is the “What’s New in Ext JS 6.5.3”:
http://docs.sencha.com/extjs/6.5.3/guides/whats_new/whats_new.html

We also have the documentation available for every release as far back as 3.4.0 – click the down arrow next to the version name in the title in the documentation to see the list.

What determines when to use MVC or MVVM architecture?

MVC (Model View Controller) and MVVM (Model View ViewModel) is described in a great article on our documentation site, “Introduction to Application Architecture” and is accessible at:
http://docs.sencha.com/extjs/6.5.3/guides/application_architecture/application_architecture.html
This article describes the terms, how MVC and MVVM are implemented an an Ext JS application, and also demonstrates a sample app you can use to learn more: http://examples.sencha.com/extjs/5.0.0/examples/ticket-app/index.html

Why the dot at the end of Sencha Cmd?

In some of the examples I was using an experimental version of Sencha Cmd build with node – one of its aliases is sencha. (with a dot): https://www.npmjs.com/package/sencha-node

Will Sencha App Watch look for SCSS changes?

Yes it will – Sencha App Watch will look for any application change, weather to your JavaScript code or style code (.scss).

Does the current version of Ext JS support ES6?

Yes, we support ES6 (and beyond) JavaScript syntax through the use of Sencha Cmd. There are some areas that will be supported in Ext JS v7 – the class keyword and its full use to create Ext JS classes (replacing Ext.define and Ext.create), and import statements that replace Ext.require and the ‘requires’ config. Note that this replacement will be optional – we will still continue to support Ext.define, Ext.create, Ext.require and the ‘requires’ config in Ext JS 7.

When are you planning to release Ext JS 7?

Ext JS 7 is planned for the fourth quarter of 2018. You can find more information about our roadmap and upcoming releases in this blog post.

Could you briefly compare Sencha Ext JS vs Reactjs?

Sencha Ext JS and React support a common ‘component’ approach to building HTML5 Web Applications. One of the biggest differences is that there are no robust data components that come with React; Ext JS, on the other hand, includes over 100 data-oriented components. Also, Sencha has released the ExtReact product, which allows for the use of Ext JS components in a React application. Learn more about ExtReact at: https://www.sencha.com/products/extreact/

When developing enterprise applications, Ext JS has been always the best tool, but since the acquisition, the community is afraid to select this framework again because of the confidence that Idera might put Ext JS into stop of development. What are Idera’s plans for Ext JS, is the framework going to be re-built from scratch? Do they have a long term vision for the framework?

We believe that Ext JS is the best Enterprise JavaScript framework on the market. We want to make it available and easy to use for both existing and new developers. We are continuing to work with our community to improve accessibility of components by augmenting our toolchains with modern tooling and supporting integration of our components with many other products that our customers value (similar to what we’ve done with ExtReact). Overall, we are looking to simplify and improve the Sencha user experience. We do not plan to re-build Ext JS from scratch. We do have a lot of interesting ideas around better security and supportability that should make building enterprise apps with Ext JS a no-brainer. You can find more details on our roadmap plans in this blog post.

I would love to see a webinar focused on how to test a large Ext JS application. Will we see such a webinar any time soon?

We are always looking for feedback on webinar topics from our community – thank you for sharing! Yes, we’ll likely cover this topic in a webinar when we release Sencha Test 2.2 GA, coming soon!

Get started with Ext JS today!