Remember, back in grade school, when someone pointed out that your epidermis was showing, how hard it was to muster up the courage to ask what the word "epidermis" meant? That's kind of how I felt as a Java programmer admitting that, for all the talk and excitement about JavaBeans, I had never actually seen one, never actually used one and certainly never actually built one.
But wait, to the rescue comes MindQ Publishing's Inside JavaBeans, a CD-ROM training course that's packed with everything you ever wanted to know about these programming morsels but were afraid to ask. Mastering the art of coding with JavaBeans takes not only getting to know the JavaBeans API to write reusable components, but also becoming familiar with the way design tools interact with Beans to enable developers to build applications. Inside JavaBeans covers each of these areas in a way that's complete yet easily digestible for anyone already comfortable with programming in Java.
Inside JavaBeans starts with an introduction to JavaBeans concepts, such as "write once, run anywhere, reuse everywhere" and an explanation of the issues involved in component programming models. It touts a JavaBean's ability to communicate methods and properties dynamically to an application builder, as opposed to "some component architectures" with "cumbersome registration mechanisms."
MindQ makes such good use of the multimedia presentation techniques with Inside JavaBeans that my standard learning methodology - hauling Bible-sized tech manuals up to the Barnes & Noble café - may be history. For starters, an audio narration track puts casual excitement into otherwise forgetful phrases like "a JavaBean may support either the serializable mechanism or the externalizable mechanism." In addition, just about every keyword and concept is linked to more information and code snippets are highlighted as the action they perform appears in a separate part of the screen. I really appreciated the presentation pizzazz as I tackled the Event Handling section, which describes the JDK 1.1 delegation event model and event adapters. Being able to watch the communication of events while pinpointing the specific
lines of code that manage the process really brought the subject matter to life.
The Event Handling section and the Properties section that follow involve modifications to three sample beans - a slider bean, a bar graph bean and a button bean (all part of the BDK [Beans Development Kit] 1.0) to illustrate concepts such as event multicasting and unicasting, indexed properties, bound properties and constrained properties. These sections are the most code-dense of Inside Java Beans and the bulk of my time with the CD was spent reviewing them.
Like all MindQ training products, Inside JavaBeans shows its topics sequentially by default but lets you take your own path, too. MindQ also provides "tours" - automated jumps through the material geared to different levels and interests. The JavaBeans for Application Designers tour, for example, touches on how to use Beans in an application builder and an introduction to the Bean Box, while the Bean Expert Topics tour brings together Bean design issues, APIs related to Beans, and bridges to other component models. The section on other component models, in fact, helped me truly understand, for the first time, the fuss surrounding the CORBA and COM standards.
If there's any shortcoming in Inside JavaBeans, it's the lack of any structured interaction for coding - something like, "Here's the section of code that registers an event listener; now you try to modify it to work with an event adapter." Of course, there is the opportunity to try your hand at modifying Beans once you've downloaded the BDK, but you're pretty much on your own. Some will appreciate the absence of hand holding, but I would have preferred a bit more. By the way, MindQ does offer technical assistance to registered users and says it will try to answer content-related questions via e-mail or its toll-free number.
After a total of about four hours with Inside JavaBeans, I can say that no longer do I feel embarrassed, either in front of my computer or at post-conference cocktail parties, when it comes to JavaBeans and component model concepts. At last, I feel confident brandishing buzzwords like persistence, reflection and serialization, sure in my ability to explain them if asked. Now if I could only find the time to sit down with a good dictionary and look up that word "epidermis"
About the Author
Andrew Raskin is a bilingual (English/Japanese) freelance writer and Java programmer in New York City and can be reached at [email protected]