做产品,特别是在提公相应的api的产品,在升级版本的最基本的原则是在对以前版本的兼容.此兼容包括两方面,首先是针对所有的二次开发人员,要保证接口调用上对旧版本的兼容,第二是保证以前版本的输出及结果,在升级之后没有变换,也就是对最终用户感觉不到任何变化.用一个简单例子, 仅仅说明一个问题.
假设旧版本的产品中有一个有个方法 print
print(message){
//do something
}
实际应用过程中开发人员使用print(something)进行开发.但是为了提供友好的客户体验,产品研发部决定提控带有样式的输出结果,用户可以自定义样式,为了对以前版本代码的兼容性,产品提控了默认输出样式.
print(message){
style =customStyle;
if(!style){style=defaultStyle;}
//do something
}
现在来看,以前旧版本的代码照样运行.但是升级版本之后,用户提意见了怎么我看到的结果和以前不一样.经过检查结果发现以前的输出结果都是根据默认的样式输出的.但是没有任何样式可以达到以前一样的结果,除非没有样式.进行了以下修改,产品提控配置时都是用输出带有样式的输出结果,默认情况是不使用样式的.
print(message){
sytle=null
if(useStylle){
style =customStyle;
if(!style){
style=defaultStyle;
}
}
//do something
}
这里仅仅为了说明这个问题,对于其他方面不做深入的讨论.
分享到:
相关推荐
该项目是一款基于freeRTOS操作系统和STM32F103x微控制器的手机远程控制浴室温度系统设计源码,共包含1087个文件,包括580个C语言源文件、269个头文件、45个汇编源文件、36个数据文件、36个目标文件、35个编译规则文件、28个包含文件、27个文本文件、6个源文件、3个归档文件。此系统通过手机远程实现对浴室温度的有效控制,适用于智能浴室环境管理。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。