“Learning ExtJS 4” is a good, practical introduction to ExtJS for beginner ExtJS developers who haven’t used the library, or who have used prior Ext versions. In a couple spots I found myself wishing for deep technical details, e.g. explanations the rationale behind architectural decisions the Ext team made, but that is consistent with the target audience for the book.
In the introductory chapters on setting up Ext, they cover common errors that trip up beginners, a useful insight not necessarily visible in documentation. It has thorough coverage of many useful concepts that allow front-end developers to reason about their code: how the class loader works, object creation lifecycles, component layout lifecycle, how to use selectors, etc.
I found the chapter on the Ext class-loader particularly interesting, even though I’ve worked with Ext for a while. My personal experience has been maintaining existing code, and this section provided solid background material about the library. In particular, they explain how Ext is able to implement inheritance, mix-ins, and singletons as library constructs. They demonstrate how Ext implements multiple names for the same class (class name, xtype, alternate class names) – though I’m still not convinced that is a useful feature in the library.
While there is a trend toward small, combinable libraries (e.g. Underscore.js, Backbone.js, handlebars.js), and so on, Ext provides a superset of many of these libaries, which I imagine would be really convenient if you just want a library that gives you everything you need. When Ext is sold, core collections and utility belt APIs are treated as commodity parts, overshadowed by the slick UI features. This book devotes several chapters to architectural details provided by the library, such as MVC functionality and event processing, with a smattering of other similar features sprinkled through the book, like where to find the APIs that duplicate the selectors in jQuery.
This book extensively covers common the common UI controls in Ext that shine, from basic button controls to grids and charts. For someone deeply familiar with the library, this is probably not that useful, but for a developer with cursory knowledge of Ext, or extensive knowledge of other libraries, this book gives an easy-to-follow introduction to the good parts of Ext.
“Learning ExtJS 4” is available through the publisher, PacktPub, and Amazon