這張圖顯示了各種應用程式的程式碼規模比較,有些可能超乎你的想像。

這張圖統計了各式各樣的作業系統與應用程式的程式原始碼行數,雖然每個程式設計師的習慣不同,也會造成程式碼統計的一些差異,但大致上還是可以看出每個程式的規模在哪一個數量級,以及不同程式間的差異。

首先是十萬行這個等級的程式,一般的手機 App 與一些應用程式在初期發展時,都是在這個範圍,例如 1990 年的 Photoshop v1.0 大概只有十幾萬行的原始碼。

lines_of_code-00


接著是百萬行的等級,一些早期的作業系統都是在這個等級,像 Linux Kernel 2.2.0 與 Windows NT 3.1 等,而 Photoshop C.S. 6 也在這裡。

有趣的是,世紀帝國線上版(Age of Empires online)也有在這個範圍。

lines_of_code-01

接著就是一些最近幾年的作業系統與常見的應用程式,例如 Linux 3.1、Windows NT 4.0、Android、Firefox、Google Chrome、MySQL 與 Apache Open Office 等,這些都在五百萬到一千萬這個等級附近。

lines_of_code-1

在兩千五百萬行的部份有微軟的 Windows 2000、Windows 7、Windows XP、Office 2001、Office 2013 等,有趣的是 Windows XP 的程式碼還比 Windows 7 還多一點點。

五千萬行以上的,則有 Windows Vista(程式碼很多似乎不代表品質好)、Visual Studio 2012、Debian 5.0 codebase 與 Mac OS X Tiger,還有 Facebook 也在這裡,一般人可能很難想像 Facebook 的程式規模竟然有那麼大。

lines_of_code-2

最後一個很有趣的地方是現在汽車系統的程式碼平均都有一億行,比現在一般電腦的作業系統都高出很多,可能是因為電腦可以當機,汽車絕對不行?

lines_of_code-3

這個統計中規模最大的是美國醫療系統 healthcare.gov 網站,程式碼竟然達到五億行,我也不知道這是怎麼回事,不過這個數據是它們網站自己回報的數據,不知道是否夠準確。

參考資料:Daily Infographic