在考虑升级开发工具时,向后兼容性有多重要?如果需要对源代码进行重大更改,您还会购买Visual Studio 2010吗?在交易新功能的向后兼容性方面,您的转折点在哪里?
虽然您从开发人员的角度提出这个问题,但我认为参考您开发的软件这将是一个更有趣的问题.所以我打算回答这个问题.:)
向后兼容的硬件和软件(更重要的是,未来兼容)为您的用户提供了安全感,特别是在购买或升级Windows等平台时.如果不出意外,Windows因其对向后兼容性的细致关注而闻名.您可以在Windows Vista上运行十多年前编写的程序,只有很小的问题,只要它们"写得好"(即不使用未记录的API).
另一方面,当您尝试引入新功能或彻底改变平台时,严格注意向后兼容性会束缚您的双手.Apple知道它有一个垂死的操作系统,并且在其最大胆的举动之一,它购买了NeXT并决定将NeXTSTEP作为新的MacOS.销售过程中销售人员的关键之一是向后兼容的Classic层.当Apple决定转向英特尔芯片时,在英特尔运行PowerPC应用程序的机制Rosetta以及通用二进制文件允许人们在PowerPC和英特尔之间自由移动而不用担心应用程序丢失.
一个有趣的事情是,随着向英特尔的过渡,经典环境消失了,但没有人真正关心,因为他们有前5年从Mac OS 9过渡.因此,只要你有可能最终放弃对遗留系统的支持一种简单的方法,可以迁移到新系统,并为用户提供充足的时间.