日前,著名社交网站 Facebook 在其开发者网站上宣布不再为其官方 Java 客户端库提供支持,并称此举是为了改进整个 Facebook 平台的体验。新闻中称:
……我们决定不再为我们的官方 Java 客户端库提供支持,而是依赖现有社区驱动的库来填补这个空缺。尽管我们理解这可能会影响某些开发人员,但是我们觉得将工作重点放在我之前提到的创新列表上更重要,而不是在开发者社区已经构建了几个非官方版本的情况下再去维护一个多余的客户端库。
本周四的发布之后,任何一个开发者页面不再提供官方 Java 客户端库的下载。……
对于 Java 开发人员,Facebook 建议使用开源替代品,并给出它们的链接。
Facebook 的此举无疑伤了 Java 开发人员的心。不少开发人员认为这是一种短视的行为,对整个生态系统会产生负面影响。有趣的是,由于微软对 Facebook 进行了投资,还有开发者半开玩笑地认为这是另一个“微软阴谋”。
著名 Java 站点 JavaLobby 发布了题目为“ Facebook 放弃 Java 支持–梦幻估价再失 10 亿美元(Facebook Drops Java Support - Loses Another $1B of Fantasy Valuation)”的文章。文章认为:
……这似乎与所说的‘Facebook 平台正以异常快地速度发展’相矛盾。我个人认为,真正推动 Facebook 发展的是开发和维护更多的官方 API,以允许开发人员使用他们选择的语言开发新的应用程序……
对于 Facebook 所说的 API 维护负担,Jim Bethancourt评论说:
我真的希望看到 Facebook 采用 Google 的 OpenSocial 平台。这会帮助 Facebook 摆脱一些维护的负担,同时无需自己维护 API 就可把他们自己开放给大量的开发人员。我不是一个 Facebook 或 Google OpenSocial 开发人员,但是我确实知道维护 API 不容易——那么为什么不在有免费午餐时利用一下呢?
也有的 Java 开发者认为不必大惊小怪,因为 Facebook 的官方 Java API 实在不怎么样。Daniel Kaplan评论说:
事实上,现在第三方 Java Facebook API 比官方的要好用已经有一段时间了。那么,至少现在它还能保持。如果你看看官方 API,你就能分辩出它的开发者并不是真的懂 Java。他们把私有内部类作为公共方法的参数。这意味着你不能调用这些方法,因为你无法创建这些内部类。
此外,还有人认为 Web 客户端的未来属于 Javascript,Java 社区应该拥抱一个 Ajax 前端。
或许,正是官方 API 的风评不佳导致了 Facebook 决定不再为维护投入资源。但是,一个更能笼络人心,或者说是更成熟的做法,应该是和开源社区进行合作提供令开发人员感到满意的 API,进而由台前转到幕后,而不是象这样突然死亡。
经历过“Spring 运动”的 Java 开发者也不必对缺乏官方支持感到耿耿于怀,因为在这个开源时代,从来不缺乏比所谓官方支持更好的选择。
评论