Hi,
Robin Rowe wrote:
"Refactoring is a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior." - Martin Fowler on http://www.refactoring.com/
This is exactly what happened to the code in /app between 1.2 and 2.0 - its internal structure changed drastically, without reducing its external behaviour. Although of course, not only was the code refactored, quite a few features were implemented with the new structure too.
What I am saying is that moving redundant code out of application space into
libraries is a significant component of refactoring.
I would rather say that the modularising of an architecture, the separation of distinct functionality into distinct modules, is an essential part of refactoring. Putting this functionality into a library is simply a matter of passing the linker the right flags.
Sven has answered that question. The client-server design of the PDB sidesteps the license issue by exposing functionality in app (which includes the PDB) without linking (instead using sockets).
Actually, shared memory. But it amounts to the same thing. It's all IPC.
Appreciate the clarification.
No problem :)
Cheers, Dave.
-- Dave Neary bolsh@xxxxxxxx