c++/c#/android/ios/web里各有哪些輕量級開源項目適合入門者?

請注意「輕量級」和「入門者」兩個關鍵詞。

首先,代碼量不要大大,不能一個項目編譯後幾十兆。

其次,代碼可讀性要高,適合入門者。

再次,代碼要規範,不要類似xx青鳥、xx播客的學生作業。


推薦幾款不同類型的輕量級開源項目給題主,供大家一起交流學習。

C++類:

1. 項目名稱:輕量級嵌入式腳本語言 fakescript

項目介紹:fakescript 是一款輕量級的嵌入式腳本語言,使用 c++ 語言編寫,語法吸取自 lua、golang、erlang,基於 flex、bison 生成語法樹,編譯成位元組碼解釋執行。與 lua 相比,運行速度不相上下,更易使用,源代碼可讀性更強。

腳本特性:

  • 語法類似 lua。
  • 全部為函數。
  • 支持 array,map,可以無限嵌套。
  • 支持 fake testfunc(param1) 產生 routine,實現假多線程效果。
  • 支持 C 函數和類成員函數的綁定。
  • 自帶解釋器,JIT 部分支持。
  • 支持多返回值。
  • 自帶 profile,可獲取腳本各個函數運行時間。
  • 支持熱更新。
  • 支持 Int64。
  • 支持 const 定義。
  • 支持包。
  • 支持 struct。
  • 支持打包 bin 文件或可執行文件。
  • 自帶 gdb 風格的命令行調試器,以及 vs 風格的可視化編輯調試ide。
  • 可在 C 里直接通過介面調用,開始命令行調試。

項目地址:esrrhs/fakescript - 碼雲 - 開源中國

2. 項目名稱:基於 C++11 的輕量級網路框架

項目簡介:本項目是一個基於 C++11 的輕量級網路框架,基於線程池技術可以實現大並發網路 IO。

網路庫

  • tcp/udp 客戶端,介面簡單易用並且是線程安全的,用戶不必關心具體的 socket api 操作。
  • tcp 伺服器,使用非常簡單,只要實現具體的 tcp 會話(TcpSession 類)邏輯,使用模板的方式可以快速的構建高性能的伺服器。
  • 對套接字多種操作的封裝。

線程庫:

  • 使用線程實現的簡單易用的定時器(AsyncTaskThread)。
  • 讀寫鎖。
  • 信號量的封裝(ios下用條件變數實現)。
  • 自旋鎖。
  • 線程組。
  • 簡單易用的線程池,可以非同步或同步執行任務,支持 functional 和 lambad 表達式。

項目地址:xiahcu/ZLToolKit - 碼雲 - 開源中國

3. 項目名稱:輕量級開源詞典軟體 AlphaDict

項目簡介:它是一個輕量級的開放詞典格式的開源詞典軟體,你可以製作自己的詞典, 也是一個跨平台的軟體支持 linux, unix and windows。

功能特性:

  • 支持大量第三方詞典格式:cedict,startdict,dicts,info,IDP,etc。
  • 屏幕取詞功能。
  • 生詞本。
  • 容易製作自己的詞典。

項目地址:kartorz/AlphaDict - 碼雲 - 開源中國

C#:

1. 項目名稱:輕量級的代碼生成工具 CodeBuilder

項目簡介:CodeBuilder 是一款簡單易用且輕量級的基於資料庫物理模型的代碼( C# / java / ruby / php / xml 等)生成工具。

項目地址:xianrendzw/CodeBuilder - 碼雲 - 開源中國

PHP:

1. 項目名稱:輕量級通用後台 lyadmin

項目簡介:lyadmin 是一套輕量級通用後台,採用 Bootstrap3 製作,自帶許可權管理,模塊化開發。

項目地址:jry/lyadmin - 碼雲 - 開源中國

2. 項目名稱:輕量論壇社區系統 StartBBS

項目簡介:StartBBS(起點開源社區系統)是一個基於 CodeIgniter 框架開發的 PHP 新型社區系統,她輕量小巧、簡單易用、強大高效,又簡稱 」STB(燒餅BBS)」

項目地址:startbbs/startbbs - 碼雲 - 開源中國

Android:

1. 項目名稱:基於環信的輕量級 IM

項目簡介:Android 輕量級 IM 開源項目,基於環信 Sdk3.x 版本。項目中基礎架構類似 MVP,但不是按照安卓官方標準來的,而是在自己的理解上精簡了部分,且沒有做整體的 MVP 封裝,但是應該不會影響代碼理解。

主要功能:

  • 聊天模塊,包含文字聊天、語音聊天、發送圖片、短視頻、實時音頻通話、實時視頻通話。
  • 通訊錄:可獲取系統通訊錄,和環信好友關係整合。
  • 撥號器:自定義的簡單撥號盤,方便老人直接撥打電話。

項目地址:vanish136/FamilyChat - 碼雲 - 開源中國

IOS:

1. 項目名稱:輕量級日誌列印工具類 xxlogger

項目簡介:xxlogger 是日誌列印工具類,提供對 java,object-c,c 的支持。xxlogger 中的 xx 指某種語言。

項目地址:itfriday/xxlogger - 碼雲 - 開源中國

歡迎關注碼雲,一個專為開發者提供穩定、高效、安全的雲端軟體開發協作平台,無論是個人、團隊、或是企業,都能夠用碼雲實現代碼託管、項目管理、協作開發,更有代碼質量分析、項目演示等豐富功能,歡迎放碼過來。

碼雲知乎機構賬號的「放碼雲間」文章專題為你推薦優質的開源項目資訊,展現最新的行業動態。

碼雲 - 開源中國代碼託管平台


如果只是學習的話C#方面推薦:

Microsoft All-In-One Code Framework - a centralized code sample library

MSDN Examples in C#, VB.NET, C++, JavaScript, F#

這裡面有大量代碼示例

如果不單純學習的話:

Microsoft/dotnet

quozd/awesome-dotnet

http://codeplex.com上還有很多


ZThread源碼就比較短,開源的,很快就可以看完,可以學習到設計模式,POSIX和Native WIN32 Thread編程,可以輔助理解操作系統概念,智能指針封裝,API設計等等

還可以研究uCOSII嵌入式操作系統代碼,也比較短,C語言的代碼。

php可以嘗試閱讀WordPress源碼


不用管項目大小,開源項目,找自己感興趣的,直接看patch或者commit,可以從小的開始


這裡我值給你分享幾個PHP的開源輕量級項目吧。

這也是我們公司一直在維護的幾個開源項目。

首先是一個簡單的PHP框架——zentaoPHP,絕對輕量級,不像其他框架那麼臃腫。

zentaoPHP - 易軟天創開發者中心

再就是我們基於該框架而開發的開源項目產品:禪道項目管理,蟬知企業門戶,然之辦公協同

鑒於LZ的情況和目的,這裡不推薦禪道,建議LZ看下蟬知企業門戶系統和然之協同辦公系統,項目不大,代碼規範,研讀幾遍,LZ定有收穫。

蟬知企業門戶系統 - 開源免費 CMS系統

然之協同辦公系統


iOS的話, 可以看看beeframework


C++的話,用leveldb就挺好的。


C#的話 官方那幾個就不錯

一個musicstore 一個eshop 都是.net core的

具體可以在github上找找


c++:cocos2dx / libevent / libev


推薦閱讀:

遠程系統更新升級是什麼原理?
android UI設計MVVM設計模式討論?
Android 的 Rom 如何有效的推廣,小米的 Rom 推廣有何特點和值得學習的地方?
當前旗艦智能手機的綜合性能已經達到了哪個時期的PC水平?

TAG:前端開發 | iOS開發 | C# | CC | Android |