棋盤上的麥粒問題,相信每個人都聽說過。那小小的 64 個棋盤格,因為一個簡單的邏輯設定,便能裝下全世界的的麥粒。表格工具作為辦公場景中最基礎也最常用的業務支撐工具,同樣具有著無限的可能。
近年來,網際網路、大資料、雲端計算、人工智慧、區塊鏈等技術加速創新,日益融入經濟社會發展各領域全過程。數字經濟發展速度之快、輻射範圍之廣、影響程度之深前所未有,正在成為重組全球要素資源、重塑全球經濟結構、改變全球競爭格局的關鍵力量。
軟體和資訊服務業作為數字經濟的先導性、基礎性和戰略性產業,是未來數字世界的構建者和引領者。作為知名的軟體開發技術和低程式碼平臺提供商,葡萄城專注開發技術和工具四十餘年,一直以來引領著國內控制元件技術和資料分析工具的發展。
本期 SegmentFault 思否 x 技術人專訪,採訪嘉賓為西安葡萄城技術佈道師姚堯。由他來為我們分享表格工具這一看似簡單、卻動輒“耗資過億”的產品,技術究竟難在哪兒?究竟解決了什麼問題?在我們的日常工作、生活甚至數字經濟浪潮中,會扮演什麼樣的角色?
採訪物件介紹:
姚堯,西安葡萄城技術佈道師,SegmentFault D-Day 技術講師,微軟開發者峰會講師。姚堯畢業於西北工業大學計算機系,一直聚焦於前端電子表格在各行業資訊化中的使用,積累了豐富的前端技術和行業解決方案經驗,為騰訊、阿里、華為以及平安等企業提供技術諮詢服務。
https://v.qq.com/x/page/y3324...
以下為採訪 Q&A 的文字內容,為方便閱讀略有刪改。
Q1:能否用一句話來介紹 SpreadJS?提煉三個關鍵詞,又會是哪三個?
用一句話的話,我會這麼說 —— “葡萄城開發的純前端表格控制元件 SpreadJS 可以用不到 10 行程式碼,將傳統 Excel 的功能和使用體驗完美嵌入到線上文件系統中。”提煉三個關鍵詞的話我會選擇匠人、匠心、匠術。
首先,SpreadJS 是一款在介面和功能上都與 Excel 高度類似的開發控制元件,提供了表格文件協同編輯、 資料填報和類 Excel 報表設計的功能支援,可幫助軟體廠商和系統整合商有效應對資料處理、資料共享和資料有效性甄別等業務需求。除了強大的功能外,正如我的一句話介紹,SpreadJS 可幫助開發者在不依賴任何 Excel 元件的情況下,實現“用不到 10 行程式碼,將 Excel 的功能和使用體驗完美嵌入到線上文件系統中。”
之所以能做到這些,在於葡萄城從 1993 年推出支援微軟 Visual Basic 的控制元件產品,再到與微軟展開持續深入的合作,應時而變推出前端開發控制元件和快速開發平臺,目標便是打造出完美相容 Excel 的功能和使用體驗並高度匹配線上辦公場景需求的 SpreadJS 控制元件。
通過 30 年的精耕細作以及對行業的理解沉澱,這背後是一群匠人,憑藉匠心打磨出的一款工匠級別的產品與技術。
Q2:SpreadJS 現階段主要的應用場景有什麼?主要用來解決哪些問題?
很多企業的 IT 業務都是從一張表格開始的。不僅僅是資料儲存,團隊中的資訊共享也依賴於表格這一表現形式。文件、報告、憑證以及基礎資料的彙總計算,大部分是在表格的形式中完成分析與決策的。即便表格的應用場景已經十分廣泛,但隨著業務的發展,使用者對於表格產品的效能和系統相容度還是能提出更高的需求,這也迫使表格產品不斷的優化迭代。
現階段,SpreadJS 主要聚焦於未來的智慧辦公,應用於表格文件線上協同、資料填報、以及類 Excel 報表設計這三大應用場景。藉助 SpreadJS 提供的 API 與二次擴充套件能力,可以讓資料處理不再受硬體、作業系統與使用環境的限制,幫助企業實現更為高效的資料處理應用。
比如 SpreadJS 中全新設計的 TableSheet 能力,除了排序、篩選、樣式、行和列置頂以及單元格編輯等 WorkSheet 基礎功能之外,還提供了關係資料管理、結構化公式和資料分組等實用功能。
Q3:表格工具在使用者端看起來似乎很簡單、很容易實現,但業內也有人表示這是一個“耗資數億”才能做出的產品。對於一個表格工具而言,技術層面最大的技術難點是什麼?西安葡萄城在表格領域已經深挖數十年,您認為最重要且最堅實的技術積澱是什麼?
B/S 作為 Web 興起之後的一種應用模式,統一了客戶端,將系統功能實現的核心部分集中到伺服器上。
但隨之而來的問題是多瀏覽器差異、瀏覽器沙箱機制、記憶體訪問受限、客戶端效能低下等。作為資料載體的表格,最直接的影響就是經常會被“吐槽”卡頓,UI 介面“假死”,介面操作不流暢等。
引起這些問題的癥結在於瀏覽器渲染引擎的基礎原理:當介面元素越多,瀏覽器的渲染時間會顯著增長,記憶體消耗會越大。這對於強計算邏輯的表格工具來說,無疑是棘手的難題。
由此可見,開發一款前端表格控制元件需要攻克這四個技術難點:效能、記憶體消耗、可靠性和操作體驗。
當然,開發一款前端表格控制元件最難的不只是技術,還有對錶格產品的熟悉程度。因為純技術的問題,開發者靠時間與精力的投入總能彌補。然而,一款真正優秀的產品最重要的一點,則是對於應用場景,以及使用者使用體驗的細節把控,這也是 SpreadJS 最堅實的技術沉澱之一。
Q4:在過去幾年裡,SpreadJS 備受華為、明源雲、遠光軟體、騰訊、網易等知名企業青睞,豐富的應用場景和解決方案已經覆蓋了十幾個行業眾多頭部客戶的專案。對於客戶而言,表格工具有哪些是最基礎最核心的硬需求,又有哪些功能是“額外的驚喜”?
如前面所說,團隊溝通中的資訊共享大量依賴於表格這一展現形式,而伴隨著企業數字化轉型的迫切需要,遠端辦公模式已正式開啟,純線上的表格產品儼然成為了很多企業必備的工具之一。
以某知名保險公司為例,各級機構需要定期向上彙報業務資料,機構人員根據業務將從系統獲得的基礎資料進行分析彙總,以表格和圖表的方式呈現給上級單位。傳統的 Excel 線下方式費時費力容易出錯;人員流動性較大的基層機構又無法使用繁瑣的 BI 系統。而使用 SpreadJS 開發的自助報表系統,可以讓基層業務人員按照傳統的 Excel 方式線上設計維護資料包表的模板,通過表格資料繫結實現報表的定時傳送。自助式報表系統降低人力成本同時也降低了使用人員的門檻,對於報表的檢視人員可以直接看到嵌入在郵件中報表結果,或者通過連結進入線上報表檢視實時資料。
但隨著表格工具的發展,企業和使用者對文件協同工具的需求也從「好用」變成了「適用」,如何滿足不同場景下的使用者需求,是市場對 Saas 企業和系統供應商們提出的挑戰。
提到額外的驚喜,除了對於表格依賴較多的金融保險等行業,SpreadJS 還悄悄改變了很多行業的資訊化實現方式。在計量檢定行業中,吉林省科圖科技有限公司是資訊化的先行者,公司提供的計量檢測雲服務 SaaS,其核心證書模組便是和 SpreadJS 產品線一起打磨而成。從最初的證書線上製作,到證書的線上列印,以及後續的證書批量製作。在計量行業,線上證書設計、預覽,證書內容自動填充,特殊符號向量支援,批量 PDF 證書生成等功能,SpreadJS 已經全面覆蓋。
Q5:很多企業的 IT 業務都是從一張表格開始的。不僅僅是資料儲存,團隊中的資訊共享也需依賴於表格這一資料結構。在未來的智慧辦公場景及數字經濟中,一份表格還可以承載哪些需求?可以擔任什麼樣的角色?
瞭解表格工具的朋友會知道,表格工具的迭代歷程,其實正是一部使用者需求的演化史。而表格工具保持旺盛生命力的原因,正是因為人們對資料處理的需求始終旺盛。隨著網際網路的發展,在智慧辦公場景中人們對於資料表格工具有著更多的期待,比如基於雲服務的線上功能以及企業級的協同需求,就是現階段的一個重點。尤其是 2022 年數字中國概念的提出,有力推進了線上辦公程式,使得表格技術的線上協同能力上升到了新的高度。
未來十年的表格工具,一定會要具備“雲端、智慧化、資料共享”這幾個特點,連結多元的業務資料場景,提升企業的生產力。
對於表格工具擔任的角色,我想用“腳踏實地,仰望星空”來形容。表格工具作為最有力的底層支援工具,一定是腳踏實地的發展技術、深入行業,成為業務創新、技術探索最有力的支撐。但同樣憑藉連結資料的能力,也有可能成為帶動辦公場景變革、企業生產模式變革的一把鑰匙。
今日,葡萄城將踐行“賦能開發者”使命,攜最新前沿電子表格技術舉辦“葡萄城表格技術研討會暨表格產品釋出會”,旨在分享先進表格技術功能特性,發掘表格技術最佳實踐,推動未來辦公領域數字化發展。
思否小姐姐邀您一起,走近表格工具裡的無窮宇宙。