2018開放原始碼,這些NB的Facebook開源項目你都知道嗎?

2018開放源代碼,這些NB的Facebook開源項目你都知道嗎?

人見人愛的程序員,這些Facebook開源項目你都知道嗎?

2018開放源代碼,這些NB的Facebook開源項目你都知道嗎?

人見人愛的程序員,這些Facebook開源項目你都知道嗎?

Facebook為了爭當開源第一大廠,已經把自家很多好東西都拿了出來貢獻給開源世界,在開源之路上一騎絕塵,根本停不下來。

Facebook開源項目涉及的領域有移動工具多樣化、大數據、客戶端web庫、後臺運行時和基礎設施,還有通過開放計算項目涉及到的服務器和存儲硬件等等。Facebook的GitHub賬戶有274個代碼庫,收到了39000次fork、提交了79000個commit,擁有242000個關注者……

下面是Facebook最受歡迎的15個開源項目。

移動開發

Buck

Buck是一個高性能的安卓編譯系統。此係統鼓勵用戶創建由代碼和資源組成的可複用的小模塊。因為安卓應用主要是用Java寫的,Buck也是一個Java編譯系統。

Rebound

Rebound是一個模仿彈簧動力學的Java庫。回彈彈簧模型可以用來創建動畫,通過將真實物理世界引入到你的應用可使動畫更自然。回彈使用相同的彈簧常數,就像Origami使得摺紙交互模型很容易被轉換到安卓應用中。

Origami

Origami是用來設計現代用戶界面的工具。可以迅速的創建原型,運行在你的iPhone或iPad上並進行迭代,將可用的代碼片段輸出給工程師。

Stetho

Stetho是一個全新的安卓平臺調試工具。Stetho提供C/S協議,使強大的Chrome開發者工具能在應用程序中使用該協議。你的應用程序整合之後,只需訪問chrome://inspect ,點擊“檢查”即可開始。

Infer

Infer是一個靜態分析工具,用來檢測安卓和蘋果系統應用發佈前的缺陷。如果你給Infer一些Objective-C,Java或C代碼,它會生成一個潛在的缺陷列表。Infer工具也有助於防止系統崩潰和性能下降。Infer的目標是空指針異常、資源漏洞、內存溢出之類的致命缺陷。

Web開發

React Js

React Js是個用於構建用戶界面的JavaScript庫,高效且靈活。很多人把React當作MVC中的V來用,因為React不依賴你技術棧裡的其它技術,因此很容易把它用在一些已有項目的小特性上。

HHVM

HHVM是個開源虛擬機,設計目的是用來執行Hack和PHP寫的程序。HHVM用即時編譯方式實現卓越的性能並保持了PHP的開發靈活性。和Zend PHP5.2相比,HHVM為Facebook實現了超過5倍的產能提升。HipHop通常作為一個獨立的服務器運行,同時替代Apache和modphp,它也可以在命令行運行單獨的腳本。

Flux

Flux是Facebook用戶創建客戶端web應用的應用架構。利用一個單向的數據流,Flux補充了React的組合視圖組件。它更像是一種模式,而非正式框架,不用寫太多新代碼就能直接使用Flux。

2018開放源代碼,這些NB的Facebook開源項目你都知道嗎?

Flow

Flow給JavaScript添加了靜態類型,提高開發者的效率和代碼質量。Flow的目標是減少程序員花在查找JavaScript錯誤上的精力。Flow很大程度上依賴類型推斷來查找類型錯誤,即使代碼中並未標註——它像流經程序一樣精確的跟蹤變量的類型。

fb-flo

fb-flo是Chrome的延伸,可以不重新加載而修改運行的應用。它能輕易和你的系統、開發環境實現整合,可以和你喜歡的編輯器一起使用。

Jest

Jest是一款JavaScript的單元測試框架。它建立在Jasmine測試框架之上,使用我們熟悉的expect(期望)和toBe(實際值)。它自動模擬require()返回的CommonJS模塊,使得大部分現有代碼可測試。

Nuclide

Nuclide是一套Atom包,為許多編程語言和技術提供編輯功能。設計目的是為了在整個公司為工程師提供一套標準的開發者經驗——無論他們從事純iOS應用,React和React Native代碼,或者在Hack運行我們的HHVM網絡服務。

後端開發

Presto

Presto是開源的分佈式SQL查詢引擎,適用於運行交互式解析查詢,數據量支持從GB到PB。Facebook用Presto進行交互式查詢,用於多個內部數據存儲,包括300PB的數據倉庫。每天有1000多名臉譜網員工用Presto執行超過30000次查詢,掃描超過1PB數據量。

Osquery

Osquery提供一個SQL接口,用來嘗試新的查詢和監控操作系統。它擁有一套完整的SQL語言和許多有用的內置表,Osquery對於執行事件響應、診斷系統操作問題、排除性能故障是非常出色的工具。它也允許開發人員和系統管理員部署安全工具。

RocksDB

RocksDB基於LevelDB,可運行在多CPU內核的服務器上,高效使用快速存儲,支持IO綁定,內存和一次寫負載,並且非常靈活。

2018開放源代碼,這些NB的Facebook開源項目你都知道嗎?

人見人愛的程序員,這些Facebook開源項目你都知道嗎?

2018開放源代碼,這些NB的Facebook開源項目你都知道嗎?

人見人愛的程序員,這些Facebook開源項目你都知道嗎?

歡迎大家在下方積極吐槽,小編會一一進行查看並回復,期待你的答案哦……

如果喜歡請轉發,小小支持一下。


分享到:


相關文章: