Monday, February 26, 2007

New YUI 2.2.0 DataTable control

I've decided to replace Jack Slocum's excellent grid with Yahoo's YUI 2.2.0 DataTable control. This because, though Jack's library is excellent there are - for me - 3 problems currently:
  1. In transition and pre-release. Jack is about to release a 1.0 that is expanded
  2. Performance impact. The library, though well designed, is rather large due to the features. The grid, for example, generates a full-featured div to create a very nice control. But each column header is a full table (for example).
  3. Lack of control over look.
As a library for an enterprise application the choice is clear: Jack has about the best library available, and it is free. As a foundation for a web application that required quick rendering and full control over the look and feel, however, it is much more involved.

Turning our attention, then, to the YUI controls: Part of the YUI library is quite mature and works very well. They have recently added several that are released in beta.
  • They are small and quick to render
  • The DataTable is based on a normal and fully defined HTML table
  • They have multiple bugs and incomplete code
  • The interface design is immature. For example, some methods require an integer index as a parameter to a row, but there is no way to actually get that index.
I've added something like 7 bug reports into their tracking system. But overall I'm pleased with the controls. They render very quickly. My pages are loading and rendering much quicker than with the "Ext" library. But at every step I had to either overload one of their methods or write helper methods, and have had to fill in some of the blanks where either they forgot something (creating the rowUpdateEvent for example) or simply have not supplied a required feature.

No comments: