皕杰报表的设计器采用的是针对操作系统的本地端应用程序,是一种针对操作系统的native application,这种应用程序有诸多的优点和很多的好处,在这里就不一一列举了,现在就皕杰报表设计器当初的技术选型时“为啥不采用web端设计器”做一个简单的说明,主要就是如下5个方面的因素: 本地设计器 与 web设计器
- 无序列表Web端的设计器需在浏览器中运行,因此运行效率没有本地设计器运行效率高,本地应用与系统剪切板、快捷键、硬盘上的图片、数据库等程序的交互要比web端设计器更好。当前给专业人士使用的主流的工具都本地应用程序。
- 无序列表采用web端设计器所带来的安全隐患高。当前网络攻击、勒索病毒频发,如果设计器是本地设计器的话,安全防护只需要考虑报表引擎及输出展现部分的即可。如果把设计器做成web端的,除了要考虑报表引擎及展现输出部分,还要考虑web设计器的网络安全问题,这就无形中增加了被攻击的风险,需要在安全防护上投入更多,即便是这样,百密总有一疏,被攻击、勒索的风险大增。
- 无序列表做成web端应用的一个目的是为了”在大规模应用的前提下,减少在不同的客户端的部署所带来的复杂性”。而报表设计器是为少量的专业人士提供的工具,不是为大量的普通人员提供的产品,因此没有必要做成web端的。另一个方面,皕杰报表的设计器是免安装的,无论是在window上、Linux上还是macos系统上,解压即可使用,没有不同的客户端部署复杂的问题。
- 无序列表做成web端应用的另外一个目的是为了“提供永远在线提供服务”。而报表设计器不是一种需要“永远在线提供服务的工具”,报表设计器仅仅是在项目的开发阶段用于设计报表样式、测试报表数据的,一旦项目测试上线后,只需要嵌入到业务系统的报表引擎提供报表生成、展现服务,而报表设计器基本上不再使用。
- 无序列表本地端的设计器产生的成果更容易做版本管理(例如:svn、git等),本地端的设计器产生的成果(报表模板文件)更容易在不同项目间复用成果。Web端设计器则在此方面有所欠缺。