15款值得學習的小型開源項目,帶你快速步入開源世界

jopen 10年前發布 | 14K 次閱讀 開源項目

  對于初學者來說,小型開源項目更容易理解和學習,那么目前有哪些值得學習的小型開源項目?本文收集整理了知乎上網友推薦的一些不錯的小型項目,代碼基本都在 5000 行以內,感興趣的朋友可以研究下~ 

15款值得學習的小型開源項目,帶你快速步入開源世界

  SeaJS 

  Sea.js 是一個遵循 CommonJS 規范的 JavaScript 模塊加載框架,可以實現 JavaScript 的模塊化開發及加載機制。Sea.js 追求簡單、自然的代碼書寫和組織方式,代碼非常精簡。

  Koa 

  Koa 是下一代的 Node.js 的 Web 框架。由 Express 團隊設計。旨在提供一個更小型、更富有表現力、更可靠的 Web 應用和 API 的開發基礎。

  pssh 

  pssh 提供了并行版本的 OpenSSH 工具,特別適合用來控制有大量機器需要連接的情況,包括并行版本的 ssh、scp、rsync 和 kill 命令。該項目是 Python 寫的,代碼清晰而簡短,數據結構定義的很清楚,看了之后你會稱贊的。 

  grep-at-point  

  在寫代碼的時候,有時候會需要查看某個函數/類/變量在哪些地方被使用過。該項目用 emacs lisp 語言寫成,可實現在項目目錄下,所有指定擴展名的文件中,搜索當前光標所在的單詞。

  compile-make   

  該項目可實現 emacs 中一鍵編譯的需求。在項目目錄下尋找 Makefile 文件,并執行 make 命令進行編譯。 語言:emacs lisp ;代碼行數:19。  

  sigslot 

  很精簡的 signal slot 的實現,跨平臺。這個源碼有 2000 多行,但是一大半是為了模板適配不同個數的參數的代碼,干貨不足 1000 行。   

  UCOS 

  uC/OS II (Micro Control Operation System Two)是一個可以基于 ROM 運行的、可裁減的、搶占式、實時多任務內核,具有高度可移植性,特別適合于微處理器和控制器,是和很多商業操作系統性能相當的實時操作系統 (RTOS)。 

  SQLite 

  SQLite 是遵守 ACID 的關聯式數據庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp 建立的公有領域項目。SQLite 亦可以作為桌面數據庫使用。 

  thttpd 

  thttpd 是一個小型的、簡單的、可移植的、快速以及安全的 HTTP 服務器。 

  Boa Webserver 

  boa 是一個小型的 web 服務器,可以用于多種平臺,在嵌入式中比較常見。 

  C4 

  4 個函數實現的c編譯器,大約 500 行。基本上已經比較完備了,可以自己編譯自己。

  GLib 

  GLib 是一個包含很多有用的 C 程序的開發包,例如樹、哈希、列表等。GLib 之前是屬于 GTK 工具包的一部分,現在獨立出來成為單獨項目。

  tj/co  

  不到三百行,用于改善 node 異步回調語法。 

  shadowsocks 

  shadowsocks 是一個基于 python 的輕量級 socks 代理軟件(誰用誰知道)。

  aosabook 

  這是一本牛書 aosabook 的續集,500 Lines or Less 的源碼。里面每一章的代碼不超過 500 行,實現了 web 服務器、爬蟲、OCR 等等“大型系統”,每一章由不同領域的大牛完成。看看作者列表,可以說是軟件領域的名人堂。 

來自: CSDN
                    <span id="shareA4" class="fl">                  
                        </span>                 </div>
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!