1. 程式人生 > >盤點各程式語言中有趣的開源專案!

盤點各程式語言中有趣的開源專案!

生活不易,程式設計苦悶,不如“人為製造”點趣味,讓日子過得更加有玩味感。

本文參考了一些專案推薦,整理了一些程式語言中個人認為比較有意思,也相對實用的開源專案,每個語言列的都不多,感興趣的有空可以試試看。

一、Go

Gobot 是一個機器人、無人機和物聯網框架,提供在同一時間合併多個不同裝置的簡單且強大的解決方案。

Gobot 目前共支援18個不同的平臺,它包含一個 cppp.io 相容的 RESTful API 來查詢在群中執行的任何連線、裝置或機器人的狀態,還能夠直接向裝置和機器人發出命令。

Go, Robot, Go!

Cayley 是一個開源圖(Graph)資料庫,其靈感來自於 Freebase 和 Google 的 Knowledge Graph 背後的圖資料庫。

Cayley 的目標是成為開發人員工具箱中關聯資料和圖形資料的一部分。執行簡單,只需 3 到 4 個命令。

Træfɪk 是一個新型的http反向代理、負載均衡軟體,能輕易的部署微服務。

Træfɪk 支援多種後端 (Docker、Swarm、Mesos/Marathon、 Consul、Etcd、 Zookeeper、BoltDB、Rest API、file...) ,可以對配置進行自動化、動態的管理。

二、Python

Falcon 是一個高效能的 Python 框架,用於構建雲端 API 和 Web 應用的後端程式。

Falcon 採用的是一個乾淨的設計,追求 HTTP 和 REST 的“建築風格”。不需要大量的依賴和不必要的抽象。

Locust 是一個負載測試工具。使用 Python 程式碼定義使用者行為,也可以模擬百萬個使用者。

Locust 是非常簡單易用,能測試出一個系統可以併發處理多少使用者。相比其他許多事件驅動的應用,Locust 不使用回撥,而是使用輕量級的處理方式 gevent。

Coala 能提供一個統一的命令列介面用於程式碼分析和修復,無論你使用的是哪種開發語言,使用者可以建立原始碼應遵循的規則和標準。

Coala 有著友好的使用者介面,可以完全自己定製,而且它還可以在任意的開發環境中執行並且是完全模組化的。

三、JavaScript

Chart.js 是使用 <canvas> 元素的簡易 HTML5 圖表,支援6種統計圖形,不依賴其他庫。

Chart.js 提供了兩種可供使用的不同構建。Chart.js 和 Chart.min.js 檔案包含 Chart.js 和附帶的顏色解析庫。

2、EME

EME 是一款優雅的 markdown 編輯器。設有專注模式,寫作不受干擾。

EME 可從 Markdown 匯出到 HTML/PDF...等各種格式,支援數學排版,適用於學生和專業人士。

3、N1

N1 是一個可擴充套件的郵件客戶端,設計友好,排版簡潔,帶有輕微的陰影效果。

N1 相容上百種郵件提供商,包括 Gmail、Yahoo、iCloud、Microsoft Exchange 等等。作為桌面 app 它可以離線執行。適用於 Mac、 Windows 和 Linux。

四、Shell

oh-my-zsh 是基於 zsh 的功能做的一個擴充套件,方便的外掛管理、主題自定義,以及漂亮的自動完成效果。

oh-my-zsh  包括200多個可選的外掛(rails、git、OSX、hub、capistrano、brew、ant、php、python等),140多個主題,和一個自動更新工具。

Dokku 是一個迷你版的Heroku,由 Docker 使用不多於 100 行的 Bash 編寫,是最小的 PaaS 實現。

Dokku 一旦安裝完成,你就可以通過 Git 推送相容 Heroku 的應用到平臺上執行。

五、Swift

Kitura 是來自 IBM 的基於 Web 框架,也是一個 HTTP 伺服器。

Kitura 具有可插拔的中介軟體,支援 SSL/TLS 和 FastCGI,支援 JSON 解析。

Quick 是一個行為驅動的 Swift 和 Objective-C 的開發測試框架。靈感來自 RSpec、Specta 和 Ginkgo。

Alamofire 是一個 HTTP 網路開發工具包,功能強大,支援各種 HTTP Method、JSON、檔案上傳、檔案下載和多種認證方法。

六、C/C++

Libuv 是一個專注於非同步 I / O 的多平臺支援庫,目標是在這個庫中包含所有平臺的差異性。

Libuv 主要被用於 Node.js,但它也被 Luvit、Julia、pyuv 和其它專案使用。

Netdata 是一個分散式實時效能和健康監控系統,使用現代化的互動式 Web 儀表板,為其執行的系統(包括 Web 和資料庫伺服器等應用)提供高效的實時洞察力。

Netdata 旨在永久執行在所有系統(物理和虛擬伺服器、容器、IoT裝置)上,而不中斷其核心功能。

Torch7 是一個科學計算框架,支援機器學習演算法。易用而且提供高效的演算法實現,得益於LuaJIT和一個底層的 C 實現。

Torch7 的目標是在構建科學演算法時具有最大的靈活性和速度,同時使過程非常簡單。