XPages开发人员是时候与时俱进了

在这里插入图片描述
大家好,才是真的好。随着新一代Domino产品的即将发布,相关的开发人员变得不尴不尬,因为Domino V10从开发上入手,大破大立,将以node.js模式为主,虽并未取消对XPages和其他应用开发方式的支持,但对XPages开发人员还是有些稍显尴尬。
在这里插入图片描述
现在,先让我们简单地回顾一下XPages吧。

XPages是在2008年带到Domino中,距今已有十年,在发布之初,XPages的确给人带来耳目一新的感觉,比如它偷偷地将一个不完全的Java EE栈带到Domino当中(以SSJS的形式),它可使用大量已有的Java库、分离数据和代码、可采用完全的源代码模式,而XPages扩展库的出现,将它彻底转变为一个真正的应用平台。

XPages的出现并非没有争议,比如很多属于IE6时代的技术,再比如让很多传统开发人员学习Java、了解Eclipse、OSGI,但能够得到的学习资源很少。要知道很多Domino开发人员缺乏Java知识,JSF也让设计人员灰心丧气。最后,没人告诉大家什么是优秀的Xpages应用,大量的开发时间浪费在平台的折腾上。

再后来,Domino 9.0.1不咸不淡的更新,让XPages步伐开始慢下来,尤其扩展库也慢下来(最后一段时间聚焦在Bluemix上),于是就变得尴尬了。
在这里插入图片描述
就像我们开头所说的,Domino的开发人员面临一些转变,不过首先我们得对已有的Domino开发人员进行分类。如下图:
在这里插入图片描述
尴尬区域中,有死守LotusScript和Formula从不接触XPages开发的传统开发人员(客官不要笑,这种开发人员还是很多的)、使用SSJS方式做XPages开发(似乎。。。我就属于这种)、使用Java开发XPages、写OSGi插件的、在XPages之间游走的。

现在Domino V10版本发布后,我们该怎么办?这里有几条路:
在这里插入图片描述
回到LotusScript上去、切换到node.js、作为XPages开发的坚定战士、聚焦REST API、将Java EE/Spring/Servlet技术带到Domino中、将Domino作为Java服务器来使用。
在这里插入图片描述
回到LotusScript上,似乎——其实还可以,Domino V10对LS还进行了更新了呢,而且老的Notes应用易于维护运行、兼容所有平台上工作的Notes应用。缺点就是,作为一个开发人员,你灵魂已完全死去,另外,被同行所耻(内心强大,也可以过关吧?),可能还会成为老板的鱼肉点心。

切换到node.js上?这有着光明的前途,会让人活力四射,而且知识和论坛丰富,HCL也会极力助推,node.js是现代的JavaScript开发模式。缺点,node.js毕竟不是Java(对,不是Java,就是缺点,就是Java开发人员眼里的原罪)、也不能复用以前应用里的代码了。

作为XPages战士,可能现在会很舒适,一切知识都是现成的,而且技术也没有死,平台还可以扩展。可是未来已经不确定了,池子会越来越小,显然技术支持和文档也会很少。

聚焦REST,如果你需要,可以使用Designer;REST具备时下流行的API接口和应用分离的设计方式,不过需要使用到JS框架,缺点就是,你可能要学习和掌握一种客户端工作的JS框架。

将Java EE/Spring/Servlet技术带到Domino中。这样可以保留Domino平台,可以使用Java 8,文档和案例众多,直接访问NSF数据库;缺点是学习很多新工具、涉及的知识众多,servlet API落后太多、OSGi让事情可能变得有点尴尬、特殊的需求可能难以找到解决案例、一些常用的方案可能不太合适,比如JPA、安全的API等等。

将Domino作为Java服务器……我不知道该说什么,你可能是个英雄,本领高强,不被平台局限,能使用任何技术和工具,但是自己将会独个面对世界的不理解,因为你为了访问Domino中的数据,费尽周折。

最后,作为Domino开发人员的你,会与时俱进吗?

更多精彩内容可关注微信公众号:“协作者”
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/XZZ_2018/article/details/82866274