Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are pros and cons of using extjs? [closed]

In one of my project someone has recommended me to use extjs. I know very little about extjs. I have done my all the project using jQuery. I know many of you know about extjs very well.

please tell me the pros and cons of using extjs?

like image 860
Anoop Avatar asked Nov 14 '11 05:11

Anoop


People also ask

Should I use Ext JS?

Ext JS is a common choice for most enterprise-grade projects. Why? It allows you to save time on development and make the process easier, there are no compatibility issues, many multiplatform advantages, and you get great support services from Sencha.

Is Ext JS open source?

So yes, if you open source your application with a license compatible with the GNU GPL license v3.

What is requires Ext JS?

You can look at requires as a way to tell ExtJS: "When you construct an object of this class, please make sure to dynamically load the required scripts first".


2 Answers

Following are some of the major pros and cons of ExtJS:

Pros

  1. ExtJS is like a superset of the widgets like simple label, textBox buttons to complex grids, drag-drop panel s etc. It also provides demo for remoting to invoke remote server methods.

  2. It has quite good documentation with tutorials, samples and user community.

  3. Active and currently most adopted javascript RIA framework

  4. Good code quality/readability

  5. Amazing set of widgets, does everything we could possibly want. Seems quick, every version brings new improvements.

Cons

  1. Footprint - The library is 500 KB in size (using mod_gzip could be reduced to 150KB). Loading time would is high for home page on web.

  2. CSS – very easy to get lost. It is difficult to find correct class names

  3. HTML – full of divs and overly complex generated code. Difficult to debug even with FireBug.

  4. Modified GPL 3.0 licensed. Free for open source applications but paid for commercial closed source applications.

  5. Using ExtJs leads us to believe that the GUI would kind of desktop and rich. Customization is not easily achievable.

  6. Loading even simple things requires few lines of coding which is simpler in plain html or jQuery.

  7. Debugging is not very easy. Only GWT has bit better debugging in hosted mode among javascript frameworks.

  8. It is not possible for the user to bookmark a certain page . Since the objects are rendered by DOM manipulation, page can not be indexed by search engines

  9. Need quite experienced developer.

  10. I'm not sure how to use this without the entire display being EXT. I would prefer something that could integrate into what we already have.

Reference: ExtJs - The Pros and Cons

Hope this helps.

like image 162
AlphaMale Avatar answered Sep 23 '22 18:09

AlphaMale


Although the previous answer was already accepted, there are a few points I'd like to clarify.

Ext does not use a "modified" GPL license. It is fully dual-licensed under the standard GPL v3 and the Sencha Commercial License. There are FLOSS exceptions to make it further compatible for plugin/extension developers, etc., but the GPL license is the standard license.

The list of Cons, while mostly fair points in general, is somewhat meaningless without some context. Comparing Ext JS to jQuery is also meaningless -- that's comparing apples to oranges. If you compare Ext JS to other comparable RIA frameworks (Dojo, YUI, Sproutcore), then things like footprint, CSS/HTML complexity, debugging, etc. become pretty even (or at least a more useful contrast can be made). Just saying that those things are "cons" in the abstract is not really accurate, since they are mostly just requirements of any complex RIA framework.

Regarding a few specific points, this list (according to the source article) references Ext 3.0. The current version as of this writing is 4.0.7. The total code footprint has actually increased since 3.0, but Ext now ships with a dynamic class system and build tools that allow you to create optimized builds based on your application's dependencies. So yes, it has a large total footprint, but no, you do not have to include everything.

CSS/HTML complexity is a given, based on the complexity of the widgets and the layout systems supported by Ext JS. This is very common in the world of RIAs and not comparable to simple jQuery plugins. Ext 4.0 now uses SASS/Compass btw, with generated CSS, so customizing the source styles is actually much easier now than in 3.0.

Debugging is also somewhat easier in 4.0 (again due to the new class system) but is certainly harder than any statically-typed language like Java (GWT). This is an issue for any JavaScript based frameworks, not just Ext.

It is certainly possible to bookmark pages in your app if you implement history/state support (both offered by Ext). This is something you must do since it is app-specific (there is some automatic state management at the individual widget level) but it's certainly possible. Again, this is a common RIA issue, not anything specific to Ext.

The list of Pros I would agree with (except point 5 which is presented out of context and makes no sense). In fact the documentation and help guides have gotten way, way better since version 3.0. If you want specific comparisons between Ext JS and other RIA frameworks, just search SO as that's been well covered before.

like image 26
Brian Moeskau Avatar answered Sep 21 '22 18:09

Brian Moeskau