Java Studio comes loaded on a CD-ROM. Its packaging also includes an installation instruction booklet, a serial card (for registration purposes) and the manual, Exploring Java Studio. It tells you about the basics of Java Studio, and is good for getting started. It also contains added information on the examples, which are plentiful.
I recommend that you adhere to the minimum requirement for RAM. With 16 MB I was able to run the application; however, it was unbearably slow. An additional 16 MB would have made a noticeable impact. On one occasion I opened up Paint in addition to working in Java Studio, and my system crashed. On another occasion I was attempting to close Java Studio and it got hung up on one of the save windows. I attribute both of these botches to the lack of available memory.
It took my Pentium 133 laptop approximately five minutes to install the application. It follows the typical Windows installation procedure. It is very basic; there are not a multitude of components to load with varying configurations (custom, typical, etc.). The system took approximately 35 MB of hard-drive space (with FAT32 I expect this total will be smaller).
As with most other applications, you can accept the suggested install subdirectory or enter another. If the subdirectory doesn't exist, you'll receive a prompt asking if it's okay to create one. Now, it does not attempt to install under the Windows Program subdirectory. This is not a really big issue, just something you should be aware of.
How It Works
Java Studio is a GUI tool for creating applets and applications by using Java-Beans. You can also create other Java-Beans for use in further development. The package includes JavaBeans that enable you to do the basics; however, you can add Beans that you have acquired to expand your creation capabilities. Unfortunately, it is not made clear how this happens.
There are three interfaces in Java Studio, as shown in Figure 1. The main window is the top window with the title "Java Studio - Design1." The tool bar gives you access to importing, saving files, generating (applets, applications or JavaBeans) and customizing the tab below, among other standard window functions.
The tab object below has tabpages for the different types of components at your disposal. The icons that appear below the tab headings represent the list of components for each type. For example, the selected tab in Figure 1 is GUI. The components listed here include Label, TextField, Text Area, ScrollBar and Ticker Tape. Under the Database tab you'll find icons for accessing a database and tables. Under the Multimedia tab you have icons for image map and sound player. These are only a few examples of the many icons representing available components. You also have the option of adding components from your library of JavaBeans.
The other two windows in Figure 1 are "GUI:The User Interface" and "Design: The Inner Workings." The GUI screen shows how your selected components appear in the applet or application. In this window you can move the components around by dragging and you can resize them as well, so you get live feedback about the appearance and operation of what you're creating.
The Design window depicts the relationship between the components. These components have connectors that enable you to set the relationship for each component to the others. Figure 2 shows a ticker tape component. Notice the nodes on the left side.
The nodes are called connectors. The line coming out of the top connector actually originates from another component. It indicates that there is input coming into the Ticker Tape component from some other component. The Ticker Tape component has two input parameters (represented by the connectors). The connector with the line is for the text input, which is displayed in a scrolling fashion. The bottom connector is the input parameter for the scrolling speed. No input is required here; the default is set in what is called the customizer. The customizer can be thought of as the properties window.
When you put these two together, the text field and ticker tape, you get the result seen in Figure 3. You can see the line drawn between the output connector of the text field to the input connector of the Ticker Tape. That signifies that whatever is typed into the text field component is fed into the Ticker Tape, where it scrolls at the rate of speed indicated in the customizer.
The process of creating applets, applications and JavaBeans is a matter of selecting components, setting the properties in the customizer and then establishing the relationships among those components.
If you have complicated mathematical formulas, you'll certainly want to give thought to how this can be accomplished graphically within the framework of what Java Studio offers. In fact, with anything you plan on creating you will want to give thought to its design. While you do have the luxury of seeing what is being created without having to compile and run, your logic can still go awry.
Java Studio is a good product that can be used by all levels of Java programmers. Beginners will need to work where they understand the components; otherwise this tool won't benefit them. While it can be used as a learning tool, without a basic understanding of Java components it will be one steep learning curve.
Advanced users may find the tool by itself to be limiting. However, with an expanding library of JavaBeans they should be able to overcome some of these limitations.
One thing I'd like to see improvement in is the manual. They should either expand Exploring Java Studio or include an additional manual to give more information on the components and how to create applets, applications and JavaBeans. I don't expect them to duplicate what is already in the marketplace in terms of Java programming, but I do expect them to give more than what they are currently providing.
Overall, Java Studio is a product worth considering if you're in the market for a Java tool. At less than $100, it should be very attractive to both beginning- and intermediate-level developers.
About the Author
Dana Crenshaw is a software engineer and freelance writer. He currently works for TRW, Inc., and has over 15 years of experience in IT. He lives and works in the Atlanta area, and graduated from the Georgia Institute of Technology. You can contact him with questions or comments via email at [email protected]