為什麼微軟要開發Edge而不是在原來IE上做一個功能限制的前端?

比如IE繼續開發,Edge基於IE,但是不能使用ActiveX,BHO等專有淘汰技術,不能向下兼容那樣


IE幹掉了某瀏覽器

IE:我統治世界

世界和平

微軟頭頭:IE沒競爭對手了,項目組可以解散了

過了兩年

瀏覽器い誕生

瀏覽器ろ誕生

瀏覽器は誕生

瀏覽器い:我實現了功能A

瀏覽器ろ:功能A不錯,我也實現了

瀏覽器は:+1

W3C:這功能A不錯,我拿來做標準了。

網站開發者甲:如果功能A存在 那麼執行從未在IE下測試過的腳本如下……

網站開發者甲成了人生贏家,自己出去開公司/開餐館/辦慈善組織了

微軟頭頭:IE有競爭對手了,來人,開工了!

IE:我要繼續統治世界

IE:W3C推薦了功能A,我也實現了吧?

IE實現了功能A

網站開發者甲做的網站?掛掉。

網站?的運營者很憤怒,但是網站開發者甲已經沒可能回來給自己繼續做牛做馬了,於是給微軟提了一個反饋

IE:我提供兼容模式α,這樣網站?看到的是沒有功能A的版本。

瀏覽器い:我實現了功能B

某瀏覽器ろ:功能B不錯,我也實現了

某瀏覽器は:+1

W3C:這功能B不錯,我拿來做標準了。

網站開發者乙:如果功能B存在 那麼執行從未在IE下測試過的腳本如下……

.

.

.

IE:我提供兼容模式β,這樣網站開發者乙做的網站?看到的是沒有功能B的版本。

.

.

.

IE:我提供兼容模式γ,這樣網站開發者丙做的網站?看到的是沒有功能C的版本。

.

.

.

瀏覽器い:我開始刷版本號

某瀏覽器ろ:這主意不錯,我也開始刷版本號

某瀏覽器は:+1

IE:希臘字母要不夠用了……

傳統企業群:拜託別刷版本號了,每次IE升級我們都有一堆網站掛掉。我們修都修不過來。

互聯網企業群:拜託你怎麼版本號刷得這麼慢?每次我們採用新的HTML功能都要給IE單開一個分支。

微軟頭頭:我受夠了,我們在標準實現上動作太慢,市場丟太多了,得更快地刷版本號。

技術支持部門:但是每個IE版本都需要包含以前所有版本的渲染模式,然後渲染模式連bug都不能修,不然就有網站掛掉。

微軟頭頭:這沒有可擴展性,得做點什麼。

員工子:開個能刷版本號的分支吧?這樣那些要刷版本號的企業可以繼續刷,要穩定性的企業可以繼續用舊分支。

員工丑:這主意不錯。

員工寅:這主意很不錯。

員工卯:我已經fork了,現在開始動手刪兼容模式的代碼了。

.

.

.

地支不夠用了。

微軟頭頭:我們會發布一個新的瀏覽器,目前代號叫斯巴達人

微軟頭頭:我們會發布一個新的瀏覽器,叫Microsoft Edge。IE的渲染模式不會有更新了。

傳統企業群:終於有個穩定的瀏覽器了。

互聯網企業群:終於有個快速更新的瀏覽器了。


edge本來就不是全新開發的,只不過從某個ie版本開始拉了個分支單獨開發,改名為edgehtml而已。js引擎用的也依然是chakra


1、其實在早期一些的Windows版本(如xp、Vista、win7)上,IE7和IE8在開始菜單中都有一個「不啟用任何載入項啟動」的快捷方式,然而並沒有什麼人用。

2、在力推uwp的背景下,優化救不了IE內核,edge或許還擔負著給uwp開發者起個示範作用的任務。而IE即使標稱渲染速度和效率大幅改善,作為系統自帶瀏覽器,向下兼容的歷史包袱永遠輕不了,不如以類似系統工具的方式退居後台。

3、力求「乾淨」的IE內核瀏覽器不是沒人做,只是真心優化空間太小,並不能做到跑得比誰都快。


其實就是這樣的做,只是沒告訴你而已。


有何區別?


頂輪子哥 @vczh ,還有,如果還接著Win32,UWP不是得讓微軟爸爸各種發福嗎?


一款軟體誕生之初的基因烙印非常難改變,傳統軟體的設計,很多時候並不是面向最終用戶的。這樣的設計思路下,一款軟體的確可以實現某些目的,完成特定的功能,卻對於使用者來說,往往最後成為了生產力的束縛。

IE 留存在消費者腦海中的概念,慢,卡,安全性差。擺脫了原有設計框架,可能更容易做出好產品。

要讓產品本身更容易,就需要降低上手難度,在功能,界面上做減法,以減少技術上的複雜程度和用戶的認知學習成本。重新開發一個僅保留最常用 80% 功能的,要比砍掉原來 20% 的功能更加容易些,這方面 IE 已經積重難返了。


2017.1.4 更新:

感謝各位查了資料之後來評論, 雖然本人感覺自己的言辭並沒問題, 而且大家在意的地方貌似跟我的想法/結論沒什麼關係, 不過還是加粗一下.

然後補充一下本人的印象, 印象中在圖形瀏覽器出來之前也有命令行"瀏覽器"的(一般人不會用的), 類似 w3m 那樣, 以及 Emacs 內置的命令行"瀏覽器" (當然早期的時候可能都是自定義協議).

嗯, 還是純憑印象, 喜歡噴的請隨意.

------ 原答案 -----

不考慮向下兼容的話,性能/效率會高非常多。

IE印象中是80年代的瀏覽器,chrome是08年的(印象中)。輕鬆吊打。

intel的 x86 x64 結構一直不停的向下兼容,感覺也快要被吊打了。

純憑印象,不一一列舉了。

開個新的,就可以徹底拋棄舊的頑疾了。個人看來,這種踩屍體上位,是編程行業的常態。


我在學習web前端用edge和ie測試時,發現他們的開發者工具界面極為相似。。。。。一個模子出來的。。。


賣牛肉麵的人發現有人吃牛肉麵不要牛肉,總不能只賣沒牛肉的牛肉麵吧?


很不容易走過了IE6、7、8、9、10 edge,以後都是微信瀏覽器的天下


贊同 @Jiang Sheng edge只是一個市場化的名字。從技術角度看,叫ie12也沒錯。ie這個品牌被搞臭了而已。好比vs的品牌價值很大,本來叫xamarin for mac的也被強行叫vs for mac,雖然它和vs完全沒有關係。


這難道不是經濟學問題嗎?

騰訊為什麼有了QQ,再做個微信,同樣的道理。市場上總會有對手出來,倒不如自己革自己的命。


推薦閱讀:

盜版win10為什麼通過一個激活軟體就能激活,微軟難道不知道嗎,為什麼不去開發一個可以杜絕自行激活的?
為什麼提到OS X優勢和Windows劣勢的時候都要大說特說Terminal?
你怎樣在 OS X 里組織文件?
如果 Windows 系統全套源代碼(技術文檔)泄漏,會發生什麼?
控制面板和設置在 Windows 10 正式版中會被合併嗎?

TAG:MicrosoftWindows | InternetExplorer | Windows10 | MicrosoftEdge瀏覽器 |