最開始我只是想把本身在瀏覽GitHub過程當中,發現的有意思、高質量、容易上手的項目收集起來,這樣便於之後查找和學習。後來一想,若是給這些GitHub項目都加上簡單的效果圖和一些通俗易懂的中文介紹。應該可以幫助到我這樣的新手激發興趣去參與、學習這些優秀、好玩的開源項目。前端
因此,我就作了一個面向 編程新手 、 熱愛編程 、 對開源社區感興趣 的人羣的月刊,月刊的內容包括: 各類編程語言的項目 、 各類讓生活變得更美好的工具 、 書籍、學習筆記、教程等 。這些項目都是很是容易上手,並且很是Cool,主要是但願你們能動手用起來,加入到 開源社區 中。會編程的能夠貢獻代碼,不會編程的能夠反饋使用這些工具中的bug、幫着宣傳你以爲優秀的項目、star項目 :star:️ 。同時你將學習到更多編程知識、提升本身的編程技巧、發現本身的 興趣 。python
最後《HelloGitHub》這個項目就誕生了! :grin:mysql
如下爲本期內容| 點擊查看往期內容c++
一、 reddit : reddit.com 網站的源碼,經過這個項目,能夠學習 python 在構建大型項目中的使用、項目結構、代碼風格、python技巧的使用方法等。安裝教程git
二、httpstat:httpstat 美化了 curl
的結果,使得結果更加可讀。同時它無依賴、兼容Python三、一共才300+行。還能夠顯示 HTTP 請求的每一個過程當中消耗的時間,以下圖:github
三、PyMySQL:純 pyton 寫的 mysql 庫,純 python 的好處就是能夠運行在任何裝有 python 解釋器(CPython、PyPy、IronPython)的平臺上。相對於MySQLdb 性能幾乎同樣,使用方法也同樣,可是** PyMySQL 安裝方法極其簡單**—— pip install PyMySQL
,PyMySQL 使用示例代碼:web
# 下面爲例子須要的數據庫的建表語句 CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `email` varchar(255) COLLATE utf8_bin NOT NULL, `password` varchar(255) COLLATE utf8_bin NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;
# -*- coding: utf-8 -*- import pymysql.cursors # 鏈接數據庫 connection = pymysql.connect(host='localhost', user='user', password='passwd', db='db', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor) try: with connection.cursor() as cursor: # 建立一個新的紀錄(record) sql = "INSERT INTO `users` (`email`, `password`) VALUES (%s, %s)" cursor.execute(sql, ('webmaster@python.org', 'very-secret')) # 鏈接不會自動提交,因此你想下面要調用 commit 方法,存儲對數據庫的改動 connection.commit() with connection.cursor() as cursor: sql = "SELECT `id`, `password` FROM `users` WHERE `email`=%s" cursor.execute(sql, ('webmaster@python.org',)) # 獲取一條的紀錄(record) result = cursor.fetchone() print(result) # 結果輸出:{'password': 'very-secret', 'id': 1} finally: connection.close() # 操做完數據庫一要記得調用 close 方法,關閉鏈接
四、kcptun:也許是世界上最快的UDP傳輸工具,支持 macOS/Linux/Windows/FreeBSD/ARM/Raspberry Pi/OpenWrt。sql
五、discourse:Ruby 語言寫的論壇,百分之百開源、免費。數據庫
六、WeFlow:微信出品的一個高效、強大、跨平臺的 Web 前端開發工做流工具,官網 :編程
七、atrament.js:極小的Js畫板, 在線演示
八、libco:libco 是微信後臺大規模使用的 c/c++ 協程庫,2013年至今穩定運行在微信後臺的數萬臺機器上。
無需侵入業務邏輯,把多進程、多線程服務改形成協程服務,併發能力獲得百倍提高;
支持CGI框架,輕鬆構建web服務(New);
支持gethostbyname、mysqlclient、ssl等經常使用第三庫(New);
可選的共享棧模式,單機輕鬆接入千萬鏈接(New);
完善簡潔的協程編程接口
九、Newtonsoft.Json:Newtonsoft.Json 是一款 .NET 平臺中開源的 JSON 序列化和反序列化類庫,示例代碼:
public class Account { public string Email { get; set; } public bool Active { get; set; } public DateTime CreatedDate { get; set; } public IList<string> Roles { get; set; } } Account account = new Account { Email = "james@example.com", Active = true, CreatedDate = new DateTime(2013, 1, 20, 0, 0, 0, ateTimeKind.Utc), Roles = new List<string> { "User", "Admin" } }; string json = JsonConvert.SerializeObject(account, Formatting.Indented); // { // "Email": "james@example.com", // "Active": true, // "CreatedDate": "2013-01-20T00:00:00Z", // "Roles": [ // "User", // "Admin" // ] // } Console.WriteLine(json);
十、aria2gui:Aria2 的 Mac 客戶端(下載工具), 介紹、使用方法 ,特色:
十一、AndroidUtilCode:Android 開發人員不得不收集的代碼,中文介紹
十二、DanmakuFlameMaster:Bilibili 開源的,Android 開源彈幕引擎·烈焰彈幕使,特性:
1三、提問的智慧
1四、jstraining:阮一峯,全棧工程師培訓材料
1五、PTVS:Visual Studio 下的 python 開發工具
1六、 the-swift-programming-language-in-chinese :中文版 Apple 官方 Swift 教程《The Swift Programming Language》
1七、styleguide:百度前端研發團隊的文檔與源碼編寫風格
1八、weex:移動端,跨平臺前端框架,詳細的中文檔
1九、 macOS-Security-and-Privacy-Guide :A practical guide to securing macOS.(英文)
若是你發現了好玩、有意義的開源項目,點擊這裏分享你以爲有意思的項目。
或許你分享的項目會讓別人由衷的感慨:「原來還有這麼有意思的項目!編程能夠這麼酷!」
歡迎轉載,請註明出處和做者,同時保留聲明和聯繫方式。
GitHub:削微寒
博客園: 削微寒
郵箱: 595666367@qq.com