Hello Frank,
On 26/11/2010 20:56, Frank Church wrote:
...
Quite simply I am thinking of a way to create the application in
parts, so that the parts containing the new functionality can be
developed separately as standalone programs, perhaps even console
programs.
The FPC/Lazarus way is really to use components as the way to break down
the overall complexity of your application, and structure your
components into packages, several components working together going into
one package.
The dependency graph of your set of packages should be acyclic (no
cycles), where the more stable components and interfaces are the most
used, and the newer things are at the end of the dependency graph.
Traditionally, Delphi has supported dynamic package loading allowing
plug-ins to be added dynamically. FPC doesn't do that yet, but making
DLL's is still possible if you need that option. Compiling your packages
statically into your application does the trick nicely otherwise.
There are many books about making components for Delphi, those should be
useful to you, especially those describing how to write non-GUI
components (domain objects) as well as linking GUIs to domain objects.
Additionally, Peter Coad has a nice list of patterns for components that
could be useful. It's in his book "UML in color with Java", but very
readable. The UML tool, ModelMaker, now implements Coad's color pattern
and can help with your design. It parses most of FPC/Lazarus code.
My own site www.tcoq.org has a few non-visual components that may
provide examples, especially the Excel interface unit. You've got an
example of how to independently test a component.
I hope this helps,
Best regards,
Thierry
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus