Chapter 10

Modelling Application Frameworks

Object-oriented application frameworks [Fayad & Schmidt 1997] (henceforth, application frameworks) are most typically semicomplete applications that offer a quick and easy means of generating an application. One example is the Microsoft Foundation Classes, an application framework that can be used to develop graphical user interface–based applications for the Microsoft Windows operating systems. Enterprise JavaBeans™ is also an application framework which “defines an architecture for the development and deployment of transactional, distributed object applications-based, serverside software components” [jGuru 2000]. Many other application frameworks exist in the public domain and in the commercial market. Let us illustrate the most relevant aspects of application frameworks in terms of the small Java RMI example modelled in the previous chapter.

Applications created using an application framework consist of two distinct parts:

  1. Prefabricated (fixed) classes, which were distributed as part of the application framework (e.g., class java.rmi.Remote)
  2. User-defined classes, which were implemented by the framework's clients who customized it to their needs (e.g., a remote interface)

Most application frameworks impose very specific constraints on the user-defined classes and their interactions with the prefabricated classes. Therefore, they are commonly accompanied by detailed examples and lengthy descriptions of these constraints.

For example, ...

Get Codecharts: Roadmaps and blueprints for object-oriented programs now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.