OO / Rad Comparison
|
|
RAD |
OO |
|
Programmer expertise
required |
Amateur/beginner |
Professional |
|
Professional
Resources |
IDE |
IDE, Design
patterns, Refactoring |
|
Development effort,
owner builder |
Low |
Learning curve |
|
Development effort,
commercial |
Low flagfall then increasing rapidly as complexity rises |
Linear, scalable. |
|
Maintenance |
Frustrating |
Routine |
|
Value of the asset |
Relatively low |
Relatively high |
|
Working conditions |
Low |
High |
Notes
·
A
program is a heap of code which provides functionality for the user. The user
is not concerned with the code, only with the functionality.
·
Architecture
is concerned with the structure of the code, in part how it is divided up. Good
architecture facilitates the control of complexity. Monolithic code bad,
spaghetti bad…
·
RAD means
the approach whereby data from the database is exposed directly to the user via
data aware components.
·
All
classes used are VCL classes. There are no domain classes.
·
Business
rules are primarily in the gui,
with others possibly in utils or stored procedures.
Application code is in vcl class handlers.
·
This use
of
·
In
contrast to RAD is OO. When
· An application embodies or assumes a model of the user domain. OO allows the entities in the user domain to be modeled directly, eg in a transport company an application is likely to have classes which model trucks, drivers, routes , depots and manifests etc. All of the business rules are in the classes and the way they inter-relate.