以软件来说,当我们开Android Studio要建立一个新APP的时候
一定会看到这个画面
https://i.imgur.com/PYAjQ0g.png
这里告诉我们,如果你的装置最低目标是Android 4.0.3的话
可以相容几乎目前100%的装置
如果改成Android 6.0的话
https://i.imgur.com/DWd4B2w.png
就会只剩下62.6%的装置,但还是有超过一半
那为什么开发者不选择4.0.3而选择6.0呢?
放弃这37.4%的使用者有什么好处吗?
使用者应该是越多越好赚吧
因为Android每一代都在进步
有些新功能一定要某个版本以上才能使用
我的地标APP已经是个超级单纯的APP了
但为了某些功能,我还必须设定到4.4以上才能执行
(不过我忘记是哪些功能了XD)
通常所谓的新功能不外乎
1.程式变得更好写,或者更有弹性
可以做到以前很难做到,或做不到的事
2.程式做到的事情一样,但可以更有效率
速度更快或更节省内存
如果一定要相容性,可能就只能放弃这些新功能
对开发者来说是很困难的抉择
他可能必须要多写出很多很多code去弥补
最主要的代价就是开发时间会拉长,产生bug的机率也变高
至于硬件,如果要求所谓的相容性
是不是就等于扼杀了进步的空间呢?
假如一家厂商的电池,近五年的机种都可以相容使用
不就代表他这五年的电池根本就没进步吗 XD
其实以RD来说,硬件大家都希望越相容越好啊…
最好CPU是Pin to Pin的无缝接轨
只要把CPU拔下来换掉,其他东西都不用改,就可以快乐出货
对RD来说绝对是件美事XD
没事的话RD真的不喜欢把硬件换来换去给自己找麻烦
但消费者可以接受千篇一率的硬件吗?
从开发者的角度来看是这样的,跟大家做小小的分享
如果真的要用法规去要求相容性的话
不管是软件或硬件,都会牺牲进步的可能性了...