臉書宣布將把Visual Studio Code當作臉書的預設開發環境,並與微軟合作,強化遠端開發擴充套件,支援工程師大規模地進行遠端開發,並且也持續的為內部開發專用的擴充套件。

過去臉書內部沒有強制工程師使用一樣的開發環境,Vim以及Emacs都有人使用,也有許多工程師使用臉書內部的統一開發環境Nuclide。Nuclide是一組建立在Atom編輯器上的套件,支援臉書開發人員的日常工作流程以及多種開發語言,雖然在2018年臉書就已經淘汰Nuclide開源的版本,但是內部仍然還繼續使用。

2018年末臉書決定要將Nuclide搬遷到Visual Studio Code,而為了將原本Nuclide中的功能搬到Visual Studio Code上,臉書內部進行了大量的開發工作,目前內部Visual Studio Code的Beta測試版也已經受臉書工程師廣泛採用。

臉書提到,之所以會選擇Visual Studio Code作為臉書內部的統一開發環境,因為Visual Studio Code是一個開源專案,可以在macOS、Windows和Linux上運作,並且具有強健且明確定義的擴充套件API,企業可以自行開發需要的功能。

臉書大量使用Visual Studio Code遠端開發功能,臉書提到,即便工程師在本機端安裝了Visual Studio Code,但大多數的開發都是在遠端資料中心裡的開發伺服器中完成的,遠端開發帶來三個優勢,除了開發工作可以直接使用比本機電腦更高級的硬體之外,企業也可以為每個專案的相依項目,建立專用的環境,而不需要擔心配置衝突造成的錯誤,另外,遠端開發讓工程師可以快速地在多重開發環境切換,不會影響本機資源以及工具效能,能加速開發工作流程。

由於過去開發Nuclide的經驗,臉書現在與微軟合作,除了使用微軟的Visual Studio Code遠端開發擴充套件之外,他們也將參與擴充套件的開發工作,讓Visual Studio Code能夠支援大規模的遠端開發。

臉書提到,他們也還持續的為Visual Studio Code開發一些內部使用的擴充套件,包括改善內部使用的開發語言Flow對LSP(Language Service Protocol)的支援,使其與Visual Studio Code更良好地相容,而在程式碼控制方面,臉書內部使用Mercurial作為程式碼控制基礎設施,並且正在開發擴充套件使Visual Studio Code能直接操作程式碼。


Advertisement

更多 iThome相關內容