马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
#dominoforever —— 本文总共6个部分,阅读需要10到15分钟 —— 转眼间,2020年在经历了新冠疫情、中美贸易战和美国大选后,匆匆忙忙就地成为过去时了。今年,2021年,今年的12月17日,将是Domino/Notes的32岁生日。一个软件能够延续30年,确实是一个奇迹。 今天,我想谈一谈有些人所谓的“Domino已经过时了”的误解,再做一次谣言终结者。
事实一、因为Domino一直在追随着技术进步,所以不会过时。 我就以我所经历的Domino各个版本为例,做一个Domino技术发展的总结,以此来说明Domino为什么不会过时。
Domino R5(1999年):业界第一个全面兼容Internet标准协议的企业级平台。这些标准包括HTTP、SMTP、POP3、IMAP、CORBA、IIOP等。当时IBM对Domino的期望就是电子商务的技术先行者。引入Java技术。 Domino R6/6.5(2003年):支持Web Service、开始全面引入Java技术。 Domino R8/R8.5(2009年):引入基于JSF技术的XPages、Web 2.0概念、引入Eclipse架构。 Domino R9(2013年):社交化理念、Java 8 。 Domino V10(2018年):支持NodeJS、支持Docker。 Domino V11(2019年):低代码工具Domino Volt。
从上面Domino版本的发展来看,Domino既不是一个落后者,也不是一个赶时髦的。在推进企业协作平台发展的过程中,Domino一直是稳健地提供企业客户所需要的新特性。
事实二、Domino的安全性和稳定性是无可辩驳的,不论技术如何进步,企业客户还是需要安全和稳定。 Domino把安全控制内置在产品代码中,这样不论从系统层面还是应用层面都可以实现安全受控。这比通过业务逻辑和应用程序代码实现安全控制要更加安全。Domino提供了从服务器网络架构到数据库字段级的七层安全访问控制,这在业界是非常罕见的。 举一个例子:谁能确保一条数据库记录不能被DBA查询到?Domino自带的Notes数据库就可以。
事实三、Domino的一些特性和功能在现在看来也是赶时髦的东西。 (1)开发人员直接使用应用模板中创建应用。这些模板可以来自于官方,也可以来自于第三方开发者。这种一分钟就可以创建一个新应用的方式,现在好像叫“零代码开发”吧。 (2)Domino Designer开发Notes应用是基本上是“所见即所得”的。配合简单的公式语言和简单操作定义,可以很快做出一个简单易用的应用模块。现在想一想,这不就是现在流行的“低代码开发”吗?原来从R4.5/4.6开始,我们做Notes应用一直都是从事低代码开发啊! (2)Domino Designer开发XPages应用,基本上是采用拖拽控件的方式。配合简单的Server Side JavaScript(SSJS),可以很快做出一些简单易用的Web 2.0应用。原来从2009年 R8.5版本开始,我们一直从事的是低代码开发Web 2.0应用的工作啊! (3)XPages on IBM Cloud是使用Domino XPages技术实现云应用开发的一种技术尝试。虽然现在IBM已经放弃了公有云战略全面转型到混合云战略了,但是这个技术尝试已经证明了Domino技术是可以被广泛地应用到云计算中的。
(4)Domino中的Server Side JavaScript技术,是使用JavaScript语言开发服务器端代码的一种技术。这也是最早的将JavaScript应用于服务器端的成功范例——原来JavaScript也是可以成为服务器端编程语言的。到这里,你可以联想到NodeJS。在这里我需要额外说一句:从Domino 10版本开始,已经支持NodeJS。
事实四、Domino是非常少见的同时提供零代码、低代码能力和专业代码能力的企业级应用开发平台。 Domino V11开始提供低代码能力——Domino Volt。在研究了Domino Volt的源代码以后,我们发现这个产品采用了大量的IBM Forms的产品能力。IBM Forms是在低代码概念出来之前,为企业客户提供基于Web表单的应用的一款产品。那时候叫“体验设计”,现在叫“低代码”。
其实很多现在所谓的低代码,都是源自于面向用户的Web体验设计,例如报表设计器、表单设计器、流程设计器等等。
Domino V11提供了如下已有或新增的开发能力: 基于Notes应用模板的零代码开发(模板可以来自于官方和第三方开发者)
所见即所得的Notes应用开发(C/S应用低代码开发) 基于控件的XPages应用开发(Web 2.0低代码开发和专业代码开发) Domino Designer中使用Java、公式语言、LotusScript、NodeJS进行专业代码开发 Domino Volt低代码开发 使用Java SDK、C/C++ SDK进行扩展和集成的专业代码开发
可以说,Domino是非常罕见的提供了现在流行的零代码、低代码和专业代码三种能力的企业级应用开发平台!
总结一下:Domino是一个发展了30多年的企业级平台,历史悠久但是并不会过时 —— Domino自身的技术进步加上“与时俱进”的解决方案,是其成为业界常青树的主要原因!
|