WebObjects provides power and flexibility. A certain degree of complexity, however, accompanies these features. For many applications, whether Web-based or Java Clientbased, its more important to develop the application quickly than strive for maximum customization. As an example, a simple data-browsing and editing application, intended only for internal use by a system administrator, probably wouldnt warrant the same degree of effort you would put into an application accessible by the general public. To simplify the development of applications like the former, WebObjects includes a set of rapid-development technologies: Direct to Web, Direct to Java Client, and Direct to Web Services.
These three technologies are similar in approach. Their primary difference is the type of application that gets generated by each: a Web application by Direct to Web, a Java Client application by Direct to Java Client, and a Web services application by Direct to Web Services. These technologies use a data model as the base upon which an application is created (in the case of Direct to Web Services, an application capable of providing or consuming Web services). In addition, they are useful not only for creating simple data-browsing applications or Web services, but in many situations can also serve as rapid prototyping tools. Because they allow customization on various levels, they are well-suited for creating your critical applications.