在线 excel 产品技术调研
1. 电子表格软件发展史
1977 年 VisiCalc
石灰粉(VisiCalc)是在 1977 年推出的第一款电子表格办公软件,是由 Dan Bricklin 和 Bob Frankston 在攻读哈佛大学工商管理硕士时共同开发的。
1982 年 Multiplan
Microsoft 推出了它的第一款电子制表软件-Multiplan,并在 CP/M 系统上大获成功,但在 MS-DOS 系统上,Multiplan 败给了 Lotus1-2-3(一款较早的电子表格软件)。这个事件促使了 Excel 的诞生,正如 Excel 研发代号 DougKlunder:做 Lotus1-2-3 能做的,并且做的更好。
1983 年 Lotus 1-2-3
是Lotus Software(美国莲花软件公司)于 1983 年起所推出的电子表格软件,在DOS时期广为个人电脑用户所使用,是一套杀手级应用软件,1995 年 6 月 11 日,IBM于以 35 亿美元收购了莲花公司,现在的莲花成为了 IBM 的一家子公司,而 Lotus 1-2-3 也成为了 IBM 公司的五大软件产品线(Information Management、Lotus、Rational、Tivoli、WebSphere)之一。
1983 年 至今 Excel
1983 年,比尔盖茨召集了微软最高的软件专家在西雅图的红狮宾馆召开了 3 天的“头脑风暴会议”。盖茨宣布此次会议的宗旨就是尽快推出世界上最高速的电子表格软件。
1985 年,第一款 Excel 诞生,它只用于 Mac 系统。 Excel发展史
2006 年 Google Sheets
是 Google 推出的一个电子试算表程序。用户可以在网络应用程序、Android、IOS、Windows、黑莓手机以及ChromeOS的应用程序上使用 Google Sheets。Google Sheets 与Microsoft Excel文件格式兼容[2]。Google Sheets 能让用户在线创建和编辑文件,还能同时与其他用户进行实时协作。
Google Sheets 起源自 XL2Web,XL2Web 是 2Web Technologies 开发的电子表格应用程序。2006 年,2Web Technologies 被 Google 收购[3],XL2Web 也更名为Google Labs Spreadsheets。2006 年 6 月 6 日,Google 对少数用户开放Google Labs Spreadsheets 测试[4][5]。2010 年 3 月,Google 收购了在线文档公司 DocVerse。[6]2012 年 6 月,Google 收购了 Quickoffice[7]。2012 年 10 月,Google Spreadsheets 更名为 Google Sheets[8]。
2011 年 Microsoft 365
Microsoft 365 是微软建基于Microsoft Office办公室套件的云端办公室方案,包括免费的线上Office Online、线上会议Skype for Business、管理信件的 Outlook Web App、建立小组沟通网站的SharePoint Online等。[1]2020 年 3 月 31 日,微软宣布将会把 Office 365 名称改为 Microsoft 365,并推出新的订阅方案,4 月 21 日,微软正式将 Office 365 改名为 Microsoft 365。
2. Excel 概览
2.1 Office Open XML
2.2 openofficexml SpreadsheteML 概述
http://officeopenxml.com/anatomyofOOXML-xlsx.php
3. 表格技术产品
3.1 Handsontable
Handsontable 是具有电子表格功能和外观的数据网格。Handsontable 用 JavaScript 编写,可与 Angular,Vue 和 React 等最受欢迎的框架一起使用。可以使用自定义插件轻松修改或扩展它。它使用 JSON 格式绑定到任何数据源,并处理大量记录。它支持诸如过滤,排序和 CRUD (创建,读取,更新,删除)和高级操作(多列排序,创建自定义单元格类型和添加数据摘要)之类的操作。在线Demo
使用场景:
● 数据库编辑
● 配置控制
● 数据合并
● 人力资源规划
● 销售报告
● 财务分析
3.2 x-spreadsheet
轻量级,基于 JavaScript 快速构建 web excel, 在线Demo
3.3 spreadjs
SpreadJS 是一款基于 HTML5 的纯前端电子表格控件,SpreadJS 开发的源代码程序,提供开放的 API 和高度类似 Excel 的操作模式,可助您快速验证 Excel 导入导出、数据可视化、公式引用、数据绑定等产品核心功能,并顺利完成数据填报模块的开发与维护,体验“如何用不到 100 行代码,在前端实现 Excel 的全部功能”。在线Demo
3.4 sheetjs
电子表格数据工具包
3.5 Excel add-ins
Excel 加载项使您可以跨多个平台(包括 Windows,Mac,iPad 和浏览器)扩展 Excel 应用程序功能。使用工作簿中的 Excel 加载项可以:
● 与 Excel 对象进行交互,读取和写入 Excel 数据。
● 使用基于 Web 的任务窗格或内容窗格扩展功能
● 添加自定义功能区按钮或上下文菜单项
● 添加自定义功能
● 使用对话框窗口提供更丰富的交互
Office 加载项平台提供了框架和 Office.js JavaScript API,使您可以创建和运行 Excel 加载项。
更多 js 表格合集:https://jspreadsheets.com/
4. 表格核心挑战
4.1 导入/导出 Excel
要兼容 excel 文件能打开,这是必须的,数据兼容性
4.2 超大数据选区的数值计算性能
如何性能最佳,数据更新复杂的财务公示或者自定义函数计算
4.3 对 Excel 产品的深度理解
开发者对 excel 的使用理解程度高,利于开发功能和维护
4.4 客户端与服务端逻辑共享
例如 rust 组合 WebAssembly, GWT,或者 Nodejs
版权声明: 本文为 InfoQ 作者【张驰Terry】的原创文章。
原文链接:【http://xie.infoq.cn/article/8f511868d38d5e11a8f5e41c2】。文章转载请联系作者。
评论