史上最難編程的軟體是什麼?

史上最難編程的軟體是什麼?

來自專欄 極光日報

簡評:Quora上的一個問題,摘取兩位網友的回答。

@Mohammed Isam:

我會說,類似 Windows 的操作系統,是相當複雜和高難的軟體。

該軟體已有 32 年歷史,從 16 位 MS Dos 到完全成熟的 64 位操作系統。它有 4500 萬行代碼。代碼完成了硬體介面、操作文件系統、網路管理系統、監督內存訪問等諸多功能。從頭開始編寫這樣的代碼是非常之困難的。(類似的還有 ReactOS 團隊,他們已經編寫了 500 萬行代碼)

另外個例子,Mozilla Firefox 是一款非常複雜的軟體。

這個怪物大概有 5100 萬行代碼,其中大部分都是 C++,JavaScript 和 C,畢竟作為一個跨平台、多語言、全面、頂尖的 Web 瀏覽器,其難度可想而知。

第三個例子是 GNU/Linux 通用編譯器 GCC。

在最後一個版本(v7.3.0)的源代碼中使用 David Wheeler 的 SLOCCount工具,我發現 GCC 的核心部分大約有 500 萬行代碼(主要是 C,C ++ 和 Ada)。請記住,GCC 是一個龐大的軟體,它的前端可以編譯6種不同的語言(C,C ++,Ada,Objective C,Fortran,Go)以及 8 種即將推出的語言。編寫一個多通道,跨語言編譯器可能非常困難。

@Afrizal Fikri:

阿波羅 11 號火箭制導系統相當之複雜。最近有人在 github 開源了計算機指令和登月部分的源代碼。

這有多困難?首先這是第一艘載人登月火箭,前無古人。一切都是從零開始。更重要的是,使用最低級的彙編語言編寫,你敢想像么?

需要考慮的另一件事是這個系統如何保持內部時鐘同步,如果你了解時區模塊,你就知道其複雜度和處理難度會讓人發狂的。

你所知道的最難編寫的軟體是什麼?歡迎評論留言。

原文:Mohammed Isams answer to What is the hardest program to code from scratch?


園長:寫本文是因為看到知乎另一個回答「囚於一室5年,身邊只能偷偷藏一本書,為了不瘋掉,你的選擇會是什麼?」

@pig pig 感謝啟示

極光日報,極光開發者旗下媒體。

每天導讀三篇英文技術文章。

推薦閱讀:

五款良心且實用的工具,請注意查收!
TeamViewer 如何註冊賬戶?
全民K歌這個軟體怎麼樣?
【電腦軟體】一個可以查看瀏覽器賬號密碼的軟體
【電腦軟體】免費截圖、貼圖軟體,就推薦它了

TAG:軟體 | 編程 | 計算機科學 |