产品周期长度Length of the Product Cycle

互操作性的最后问题是时间。The final question about interoperability is time. 开发可互操作的应用程序所用的时间通常比开发 noninteroperable 要长。Developing an interoperable application usually takes longer than developing a noninteroperable one. 原因在于,应用程序必须检查 DBMS 功能,针对不同 Dbms 执行相同的任务,而不是某些 Dbms 支持的功能,等等。The reason is that the application must check DBMS capabilities, perform the same tasks differently for different DBMSs, work around functionality supported by some DBMSs but not others, and so on.

除了开发时间之外,还必须考虑产品生存期。In addition to development time, product lifetime must be considered. 如果应用程序设计为使用一次,例如在从一个 DBMS 迁移到另一个 DBMS 时传输数据的应用程序,则没有必要再使其互操作。If the application is designed to be used once, such as an application that transfers data when migrating from one DBMS to another, there is no point in making it interoperable. 应用程序将使用一次,并被丢弃。The application will be used once and discarded.

如果应用程序长时间存在,则将其维护为可互操作的应用程序可能会更容易。If the application will exist for a long time, it might be easier to maintain as an interoperable application. 即使对于具有单个 DBMS 作为目标的自定义应用程序,也是如此。This is true even for custom applications that have a single DBMS as a target. 这是因为可互操作的代码使用有限的数据库功能子集。The reason is that interoperable code uses a limited subset of database features. 驱动程序需要保留这些功能,即使在面对基础 DBMS 的更改时也是如此。The driver is required to keep those features available, even in the face of changes to the underlying DBMS. 因此,可互操作的代码可将对 DBMS 的更改的负担从应用程序开发人员转换为驱动程序开发人员。Thus, interoperable code can shift the burden of coping with changes to the DBMS from the application developer to the driver developer.