Kbase P25822: Dynamics. The Dynamics Prescription.
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  15/10/2008 |
|
Status: Unverified
GOAL:
Dynamics. The Dynamics Prescription.
FACT(s) (Environment):
Dynamics 2.0A
FIX:
Dynamics provides a ?prescriptive? approach to building applications in the Progress 4GL. It works to be prescriptive without being unnecessarily restrictive. This prescriptive approach to development means that the framework provides:
A. Standard component types with a great deal of built-in behavior. You can combine the components in many ways to build a variety of applications. You can extend these components by customizing them or building new ones with a similar structure. These objects represent code you don?t have to write, because it?s already done for you, and because many of the objects are data-driven.
B. A standard structure for code that you do have to write. You don?t have to struggle to work out where code should be placed and organized so that it runs when it should, handles messages and error conditions properly, and is maintainable.
The following sections describe theses ideas in more depth.
A. Standard Components
Dynamics strives to provide you with standard pre-defined solutions to requirements found in most serious applications. These solutions spare you from having to solve the same business and technical problems many other developers will be working to solve at the same time. These solutions include tools to:
1. Define users and security.
2. Build common styles of User Interface components.
3. Communicate data and program requests between a stand-alone client and one or more AppServer sessions
4. Define and manage the physical and logical configuration of a distributed application.
5. Define and properly log or display application messages.
6. Translate a User Interface into multiple languages .
If you start with the Dynamics framework, you can focus immediately on the particular business problems of your unique application, without having to reinvent supporting programs needed by every enterprise Progress application. In addition, these standard elements, and in particular the Repository that supports them, are designed to make Dynamics-based applications truly ?Future Proof?.
This means that an application you design, develop, and deploy today will be well positioned to migrate to other platforms, some of them as yet unanticipated, without major rearchitecting of your application. For example, you will be able to migrate a 4GL WebClient User Interface working with the Dynamics Managers and application business logic on the back end to a browser-based WebSpeed front-end with little extra effort.
B. Standard Code Structure
The Dynamics framework is designed to provide building blocks that help you identify where application-specific logic should go and how it will be managed. For example, on the User Interface side of the application, this means identifying common ways in which you will likely need to extend or override the default behavior of the UI. It also provides standard events and
hooks where this can be done. So Dynamics provides guidelines for where and how to:
1. create code to enable and disable fields and other UI objects when certain events occur;
2. make special requests of the server;
3. add custom logic to the UI in response to user actions.
Likewise, on the server side of the application, where the bulk of the actual business logic resides, the framework provides a variety of forms that logic can take. The forms are structured in such a way that you can understand where to put different parts of the business logic with the understanding that it will:
1. reliably be executed at the appropriate times;
2. interact properly with the client side of the application whether the data from the client is valid or not, and whether operations on the server side succeed or fail.
Every attempt is made to ensure that the framework is flexible and not so restrictive that you cannot create distinc.tive applications to satisfy your particular needs. On the User Interface side, dynamic layouts provide support for a wide variety of combinations of objects in a window, and relationships between application windows. At the same time, they still support standard features such as resizability, and access to useful common functions such as data filtering and data export.
The Toolbar and Menu Designer lets you create whatever overall visual organization you need for the actions that tie the parts of your application together. And your application can freely incorporate custom-built static (procedural) objects on the client side as well, which can have exactly the look and the behavior you need. You can easily combine these objects in your application with fully dynamic screens built out of the data in the repository. Likewise, you can create dynamic toolbars and menus for procedural windows. Both dynamic and static windows can contain a mix of dynamic and procedural objects, providing a maximum of flexibility while taking advantage of the data-driven nature of the Dynamics Repository wherever possible.
Furthermore, the Dynamics Managers and other components that provide standard support for many standard services are independent procedures with their own APIs. You can customize the Security Manager, Session Manager, Configuration Manager, Connection Manager, and other such components. You can specialize each Manager?s services as needed within an application, by adding calls to the API, or by overriding or extending the 4GL source code itself. All of the 4GL source code is available to you on the POSSE web site..