Rev and Externals (Was Re: OT: Analyzing competitors - In this case Real Software)
soapdog at mac.com
Wed Mar 23 00:52:26 EST 2005
On Mar 22, 2005, at 10:34 PM, Dar Scott wrote:
> As long as we have the external interface we have now, I'd rather
> 'start using' a library that uses an external. The library can do
> things that don't need to be done in an external and can act as the
> sugar-coating glue to the external.
I usually go even further and create proxy functions that wrap around
third party transcript libs. I always did that, but it was since my
last talk with Trevor that I thought that this might be a good tip for
the rest of the community.
Wherever I start using a lib made by a third party, I create a wrapper
transcript lib arround it, in the case of Trevor libDatabase, I created
a proxyLibDatabase that wrapped around Trevor libs. Why do this? Well,
if Trevor changes anything in his API, my app will not break, I just
need to change the proxy lib to match the current API. This was
speacially usefull now for Trevor is indeed changing the API in a very
sane way, but I have a software with hundreds (thousands?) lines
rellying in the old API, with this proxy setup, I can update the lib
and yet all my code will continue working.
This "syntatic sugar" things are a real mental health saver. I have
here proxy libs for Shao Sean email stuff, for Trevor Database Stuff
and lot's of others. I even went further and build proxy libs for my
libs... I know it sounds paranoic but, hell, I am paranoid sometimes.
When I first tweeked libCGI to add stuff from revHTTPd, I created a
proxy lib glueing them, when I rewrote revHTTPd, I changed all the API,
it was a complete rewrite. My tweeked libCGI continue to working, I
just patched the glue lib and it's running better now and more secure
and faster and it's smaller.... :D
Andre Alves Garzia ð 2004
Soap Dog Studios - BRAZIL
More information about the Use-livecode