The future of Java is not only in the business application programming area but also in the new and growing networked-consumer-device area. Indeed, this category is expected to grow so much in the next decade that Java may be the only viable development platform. As mentioned earlier, Web appliances will run a wide variety of hardware and operating systems. It is simply not realistic to imagine a third-party software vendor writing an application, say, for a cell phone, and then compiling that application for every cell phone processor. The cost-effective and quicker way to develop these products will be to write them in Java and then let the manufacturers of the phones and hardware worry about getting a Java interpreter of some type to work on their system.
Another example of a consumer device is the digital interactive TV. The Java platform has become a preferred solution for the development and deployment of interactive digital television content. Java and HTML are the only technologies that are currently available for developing complex interactive applications, and Java TV is being pushed by the likes of Motorola, Phillips, Sony, Toshiba, and Matsushita.
All is not completely golden for Java, though. Competition in the form of Windows CE exists in the Web appliance arena. Windows CE is a version of Microsoft Windows that enables these small devices to run on software that has been developed with Microsoft's C++ or Visual Basic. Within the next two to three years , we should know whether Windows CE or Java will be the dominant operating system and programming language in the consumer-devices arena.
Java's use is becoming more widespread and will continue to do so as the Internet and e-commerce applications mature. The language is designed with security, platform independence, and reduced development and maintenance costs as core features that will enable it to handle the hardware and operating system changes that are currently happening at Internet speed.
ERP systems are becoming commonplace among successful corporations. Thus, the ability to integrate with these large and complex pieces of software is mandatory for both third-party developers and the corporations themselves . Java allows this integration to be as cost-efficient and timely as possible. The cost savings are mainly derived through a write-once philosophy because Java code is truly platform independent. Another cost saver is in the way that the language was developed. Though Java is not as robust as C++, Java code can get the job done with the final version of the code usually being easier to read and less complicated than a similar program written in C++. Finally, Java was designed for the Web and includes threads, security, sockets, and more. Java is a revolution in computing because it represents a shift in the corporate viewpoint of computing from a desktop-centric to a network-centric model. This approach moves a great deal of application complexity away from the desktops and onto the network and servers, where it can be centrally and professionally managed.
SAP Automation is a collection of tools provided by SAP to assist you, the programmer, in integrating your applications with SAP. You may want to implement a process as simple as getting a piece of data out of SAP through a Java applet, or as complicated as replacing the entire SAP GUI (Graphical User Interface) with a new stand-alone application. Tools for doing both, and much more, are available in SAP Automation; some of them support all programming languages, whereas others support only certain coding environments. You can use some of these tools online to get information about the SAP system with which you are working. This chapter presents a broad overview of these tools, including the ones that do not support Java. Knowing which tools are available will enable you to make informed decisions about how to integrate your application with SAP.