比如office,zune,visual studio


巨大的原因是因為,它滿足了更多人的需求。

有句俗話說:絕大多數人只用到了軟體的15%的功能。

可是很多人不知道後面一句話:但每個人用的都是不同的15%。

你要把不同人的需求都匯總起來,那就必然會成為一個龐大的軟體。


說個簡單的例子吧,Office 要求所有修改(不論是 bugfix 還是新功能)都要加 Gate(除非你寫比如太底層的庫加不了……),就是一個可以轉換到 bool 的類,用來控制你新寫的代碼是否開啟。對 Bugfix 是默認開啟,對新功能是默認關閉。

然後如果你打開實現了 Gate 的那個庫你可以發現這個庫非常大而且還有十幾個依賴,為什麼呢?

  • 開啟那些 Gate 需要讀配置文件吧——於是對文件 IO 有依賴
  • 新功能的 rollout 是服務端控制的——因此要依賴網路庫
  • 需要檢測新功能是否會導致 Crash 吧——於是你需要和 Telemetry 相關的一堆庫
  • 寫單元測試的時候需要能用代碼手工開啟/關閉 Gate 吧——於是有 Override 的一堆相關功能
  • Office 是企業軟體,企業主需要可以控制新功能的 roolout——於是和企業管理的一堆東西都得有
  • Office 的內部版本在設置界面有一個單獨的 Tab 去允許開發人員手工開啟/關閉 Gate——於是這個庫就需要依賴 License 相關的功能去檢測是否是 Development License,還有提供給 UI 系統的介面
  • 還有更多……

這麼一看,軟體自然就大了


巨大而穩定我也贊,

巨大的結果是什麼都能幹,

巨大的軟體用起來不翻船,

巨大的軟體我再也不用選。

要不是有的地方只收viso文件,office三件套加vba基本可以橫行辦公室。

你說啥?大數據可視化的小任務?excel加vba先來一把。【*190708更新,現在回答問題關注的人多,眾口難調不容易啊,評論區有人堅持批評我不嚴格要我註明真的大數據用EXCEL是不可能搞定這一嚴肅的事實, 問題是地球人都知道EXCEL弄大數據本來就是小規模微應用級別的東西。以後是不是還要加參考文獻了,人艱不拆,回答知乎問題本為放鬆。。。】

你說啥?期刊投稿?pdf不要,word加visio。

你說啥?要路演?每一張上千的PPT聽說過嗎?

大大小小的文件基本都能打開。

偶而崩潰了,也給你一個恢複選項,而且基本可以恢復過來。

某個著名國產軟體啊,大文件打不開經常崩潰,軟體必須要登錄賬號纔可以用,卸載以後還能把原來圖標搞得一地雞毛。

最可怕的是不知不覺給你裝上他的反病毒軟體某某某霸。

國產軟體又做到小而精美,讓我交錢我也很願意。

做不到還耍流氓,我還是交錢買又大又穩的軟體。


先問是不是。office 2016一共3G多,其中一半是公用的庫文件和資源文件(字體,icon等等);另一半是可執行文件word/excel/ppt/outlook/skype/access/onenote/visio加起來不到2G,你算算平均大小多少?現在隨便一個手機app要50M吧,這樣比比看office真的很大嗎?

我覺得人們認為它大的原因可能是1. 功能太複雜 2. 響應速度慢。 事實上微軟在軟體優化這塊真的下了很大功夫,我所在的excel核心組有專門的編譯優化小組,有大神負責重寫十幾年前的代碼。我剛進組的時候編譯所有源碼需要半天,編譯命令叫做ohome,即你敲完這行命令就可以回家了--現在縮減到了2-3小時。

關於功能複雜是因為微軟的產品大多面向企業,大多數人覺得google doc/sheet很好用,有些企業為了省錢也推行google的辦公套件結果就是得不償失。作為開發者我自己也經常不知道一些冷門功能,經常需要企業用戶來給我們培訓。作為普通用戶不適應這樣的軟體很正常,我覺得微軟在這方面已經棄療了,有一些不太直觀的設計造成的用戶反饋不佳最後往往因為其他原因(數據一致性,穩定性)打回去。

響應速度很大程度取決於文件大小,有用戶抱怨打開文件太久,結果我們一看是幾個g的表格。類似這種情況用戶就認為是軟體問題,不夠簡潔。這時候你可以試試用記事本打開要多久。

有回答提到測試和開發的複雜性,這些是大型項目都會遇到的問題,我覺得office在模塊化和代碼重用上做得已經非常好了。並且程序的複雜度並不直接等價於程序大小。


古龍寫小說的時候是按段落算稿費的;

金庸寫小說是按字數算稿費的;

微軟做軟體的時候用戶是按功能多寡付錢的;

所以你看到的古龍小說是這樣的:

大家熟知的絕代雙驕也是這種畫風,小魚兒由「惡人谷」出來經恩施巴東入宜昌,描寫一話一段

所以你看到的金庸小說是這樣的:

所以你看全世界都用Office辦公,它滿足了全世界90%以上人口的需求,10年前買的電腦能運行,5年前的也能用,昨天買的也能用,關鍵是後年買的還是能用,而這,一張DVD都裝不滿,你還覺得它「巨大」嗎?實際上它比小昭陪張公子在洞裏練習乾坤大挪移的那兩個時辰的描寫都「薄」都「小」…

你以為那些做了十多年都只能做出一個文本框的公司的軟體就小嗎?不負責任的估計,2U標配12TB一臺的惠普,少於3000臺估計是運行不起來.這還不說,關鍵是他們做了十幾年的這麼一個軟體,我們竟然打不開!真好意思?


推薦閱讀:
相關文章