how to support to vendor libraries. Apart from file changes, and APIs, the new version is 64 bit whereas the old is 32 bit
What's the best design and implementation effort to support two version of a library.
Lets call them Lib_v1
, and Lib_v2
. We want to reduce the amount of code base changes that call the existing 'Lib_v1 APIs for two specific platforms--
OS_A and OS_B
--but have the underlying library be Lib_v2
. As mentioned, we want to keep a lot of the existing API names, but the internal library use would be dependent on the OS
. For the third OS
, call it OS_C
, we want to use the old Lib_v1
library.
Summary:
OS_A and OS_B:
-use Lib_v2
OS_C:
-use Lib_v1
What kind of design should I look at, and what kind of implementation effort should I steer myself to doing.
Edit: yes, I've done some preliminary search. I am lacking a lot of SWE design principles. I should note, that we use different compilers for the various platforms.