去年的某个时候,Steam 就挂出来一个通知,说因为底层组件的缘故,将不再支持 Windows 7 。
我正好有台运行 Windows 7 的台式机,只是偶尔使用一些固定的软件 (包括 Steam)。虽然 Windows Update 早就停了,但是因为使用场景是固定的,运行异常稳定,经常一开机就是几个月不需要重启。
几个月前的时候,这台电脑重启了一次。如果记得没错的话,当时 Steam 基于 libcef 的网页已经加载不出来了。
最近这台电脑又重启了一次。系统启动后,居然开始更新 Steam 了。更新完成,把该挂的代理挂上,整个 Steam 的功能居然满血复活了!
打开相关文件一看,Steam 大概是专门给 Windows 7 系统使用了旧版的 libcef 组件,基于的是旧版的 Chromiun 内核。以 Valve 这样体量的公司,万一以后真的遇到一个性命攸关的 Chromium 漏洞,显示自家内容也会受攻击,到时雇一两个熟练工把补丁 backport 到旧版 libcef 大概问题也不大。
如果这个推理成立的话,或许 Windows 7 下的 Steam 还能使用相当一段时间。
有时开发桌面软件也会遇到类似的决策问题。比如 electron 和 libcef 的最新版本都是不支持 Windows 7 的。有 "系统兼容性强迫症" 的人在遇到这种情况时会像 Valve 一样,使用它的旧版,继续支持 Windows 7 ;而有 "可维护性强迫症" 的人会选择不再支持 Windows 7 。
虽然理论上可以选那些不存在兼容性问题的框架,但是奈何 Electron 和 libcef 这样的框架常常就是社区最活跃、支持最完善的。绕过去不是不行,但是会付出额外的代价。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.