|
Creating Applications with Mozilla
Buy it at Amazon Read a Sample Chapter From The Publisher |
|||||||||
|
Furthermore, given that not many people know XUL, Mozilla's UI language, it would be well worth authors' time to spend a bit more than a "hello world" example to bring the readership up to date. There is a sizable disconnect between the beginner stuff and the more advanced topics that the team jumps in right away.
In addition, the download section for the book contains all the examples in .txt files. Why these files were not named as they are in the book is beyond me. This omission makes it a pain to match the .txt file to the example in the book.
The actual applications built during the course of the book are not available for download at all!!! Since the emphasis of the book and, indeed, Mozilla's entire development is application building with deep directory structures, it would certainly make sense to provide everything that was developed in the book for download: skins, apps, packages, etc… As far as I am concerned, that's the most difficult part for a Mozilla newbie: placing everything into the right spot and actually packaging the application.
This book should not turn you off XUL itself, however. XUL is a pretty cool technology. It lets you build a UI in XML, then handle all the work, like events, in JavaScript. The fact that an application as complex as a browser suite (browser, mail, news, chat client, JavaScript debugger, HTML editor, Calendar, etc…) was written in it is a great testament to the sturdiness of this technology. MSDN journal, in fact, has published an article exploring the use of XML to describe user interfaces in .NET.
That Mozilla works almost in an identical manner on Windows, Linux, Mac and a host of other operating systems is simply gravy. Mozilla, in fact, has become my default browser, mostly because of its ability to provide tabbed browsing, bookmark grouping and popup blocking.
Is XUL ready for business applications? Probably, not yet. Someone needs to come up with an IDE that simplifies and streamlines building of the UI (who wants to be typing all that XML) and handles events well.