如何設計試算表引擎

  • 3953
  • 0
  • 2011-08-28

老狗吠程式 - 如何設計試算表引擎

歷史上, 個人電腦之所以會成功, 最開始的原因主要是因為在 Apple II上出現 Visicalc 這款試算表軟體.

Visicalc.png  VisiCalc running in an MSDOS window

[原作者網站] [下載PC版] [說明書]

 

在那之後, 不同的 Spreadsheet 就如雨後春筍般地出現在市面上.  一般人耳熟能詳的有 Lotus 1-2-3ExcelOpenOffice.org Calc 等等.

 

在早期, 要設計試算表引擎, 都要憑著開發者獨自辛苦摸索.

然而,  隨著1988年 Borland Turbo C 1.5 版的發佈, 當中附加了一個小型的試算表引擎 mcalc 原始碼, 讓人們得以一窺堂奧.

   image

[Turbo C 使用教學] [下載Turbo C 2.01] [MCALC.zip]

 

時至今日, 雖然有更多的 Open Source Spreadsheet 出現, 如 GnumericKSpreadOpenOffice.org Calc, 但因其程式規模過於龐大, 讓人不易了解.

所幸還是有一些熱心的人, 寫出簡單的文章, 例如:

Implementing an Excel-like formula engine : 利用 VB.NET 實作

Using the engine to evaluate an expression


A Calculation Engine for .NET:


 

但真正可以更深入了解實作方式的是利用C#的 Corecalc :

image

[下載 原始碼] [下載 技術文件] [相關論文1] [相關論文2] [相關論文3]

 

希望經由閱讀這些技術文件, 可以對試算表引擎的實作有更多的了解.

或許還能思考出為什麼這樣的創意會觸發近代個人電腦的流行, 進而想出更偉大的應用.