# 《HelloGitHub》第 26 期 > 兴趣是最好的老师,**HelloGitHub** 让你对开源感兴趣!

## 目录 点击右上角的 **「目录」** 图标打开目录,获得更好的阅读体验。 ![](https://raw.githubusercontent.com/521xueweihan/img_logo/master/logo/catalog.png) **Tips**:如果遇到图片刷不出来的情况,[点击](https://hellogithub.com/periodical/volume/26) 换一种浏览方式。


关注「HelloGitHub」公众号,第一时间收到推送

## 内容 > **以下为本期内容**|每月 **28** 号更新 ### C 项目 1、[ttygif](https://hellogithub.com/periodical/statistics/click?target=https://github.com/icholy/ttygif):录制终端.gif

### C++ 项目 2、[TrafficMonitor](https://hellogithub.com/periodical/statistics/click?target=https://github.com/zhongyang219/TrafficMonitor):一款用于 Windows 平台的网速监控悬浮窗软件。可以显示当前网速、CPU及内存利用率、任务栏显示、更换皮肤、历史流量统计等功能

### CSS 项目 3、[CaoMei](https://hellogithub.com/periodical/statistics/click?target=https://github.com/xiangsudian/CaoMei):一套免费、精致的开源图标库。 - 精心绘制 丨 风格统一、力求像素级的显示 - 使用高效 丨 资源轻量、灵活、多设备兼容 - 开源免费 丨 个人私用和商用版权开源免费

4、[You-need-to-know-css](https://hellogithub.com/periodical/statistics/click?target=https://github.com/l-hammer/You-need-to-know-css):该项目包含了一些常用的 CSS 样式示例和作者阅读《CSS揭秘》的收获分享,适合于想要提高 CSS 技能的同学 ### Go 项目 5、[go-perfbook](https://hellogithub.com/periodical/statistics/click?target=https://github.com/dgryski/go-perfbook):《关于 Go 性能优化的思考》概述了编写高性能 Go 代码的最佳实践。[中文](https://github.com/dgryski/go-perfbook/blob/master/performance-zh.md) 6、[gopool](https://hellogithub.com/periodical/statistics/click?target=https://github.com/aosen/gopool):Golang 分布式的连接池,协程池。内含 Redis Client 连接池实现,特点如下: - 提供下游的高可用访问,投票机制摘除下游不健康节点 - 最小健康比、最大冷却时长可配置 - 每个下游节点对应一个 channel,保证负载均衡 - 提供连接池状态监控接口包括总连接数、每个 IP 的连接数 7、[lgo](https://hellogithub.com/periodical/statistics/click?target=https://github.com/yunabe/lgo):实现像 python 一样的交互式编程,同时整合了 Jupyter Notebook。效果如下:

### Java 项目 8、[AutoEx](https://hellogithub.com/periodical/statistics/click?target=https://github.com/BolexLiu/AutoEx):帮助 Android 开发者,让项目在崩溃时从异常堆栈中,自动寻找 Stack Overflow 的回答。体积只有 9kb 并且没有依赖其他第三方库。当程序出现异常时会有如下输出: ``` ┌—————————————————————AutoEx—————————————————————— ├ 错误类型:android.content.res.Resources$NotFoundException: Resource ID #0x7f0b0056 type #0x12 is not valid。↑详细异常请往上滚动查看↑ ├ 推荐参考Stack Overflow上4条同类问题。↓点击下方连接查看↓ ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ ├ 标题:Android Resources$NotFoundException: Resource ID #0x7f030027 ├ 链接:https://stackoverflow.com/questions/21269502/android-resourcesnotfoundexception-resource-id-0x7f030027 ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ ├ 标题:android.content.res.Resources$NotFoundException: Resource ID #0x7f07007e ├ 链接:https://stackoverflow.com/questions/48161713/android-content-res-resourcesnotfoundexception-resource-id-0x7f07007e ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ ├ 标题:App crashes when adding an ImageView? ├ 链接:https://stackoverflow.com/questions/47600747/app-crashes-when-adding-an-imageview ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ ├ 标题:XML Android app will not load on phone ├ 链接:https://stackoverflow.com/questions/48310838/xml-android-app-will-not-load-on-phone └—————————————————————AutoEx—————————————————————— ``` 9、[javatuples](https://hellogithub.com/periodical/statistics/click?target=https://github.com/javatuples/javatuples):提供了多个方便易用的 Java 元组类。写 Java 代码经常会有需要使用元组的场景,我们经常会用 Array 或者 List 来代替这种实现。但是这不仅不够优雅,并且不够安全(你要放弃泛型来达到可以存放不同类型的数据)。而 javatuples 提供了多个类型安全的、优雅的实现类,大大提升了我们开发的效率以及便捷性。示例代码: ```java ... String str = ...; Integer integ = ...; Double[] doubleArray = ...; ... // create a tuple Triplet triplet = Triplet.with(str, integ, doubleArray); // fetch data ... String myStr = triplet.getValue0(); Integer myInteg = triplet.getValue1(); Double[] myDoubleArray = triplet.getValue2(); ... ``` ### JavaScript 项目 10、[BizCharts](https://hellogithub.com/periodical/statistics/click?target=https://github.com/alibaba/BizCharts):蚂蚁出品的基于 React 的图表库。图表样式丰富、使用方便、易扩展、文档齐全,[官网](https://antv.alipay.com/zh-cn/g2/3.x/index.html) 11、[carbon](https://hellogithub.com/periodical/statistics/click?target=https://github.com/carbon-app/carbon):以美观、整洁的方式,展示你的代码片段。同时提供 SVG、PNG 多种方式展示

12、[dayjs](https://hellogithub.com/periodical/statistics/click?target=https://github.com/iamkun/dayjs):一个轻量的 JavaScript 时间日期处理库。保持和 Moment.js 的 API 设计完全一样。如果你曾经用过 Moment.js,那么你已经知道如何使用 Day.js 了。体积仅有 2kb 是 Moment.js 的轻量化方案,示例代码如下: ```javascript dayjs().startOf('month').add(1, 'day').set('year', 2018).format('YYYY-MM-DD HH:mm:ss'); ``` 13、[javascript-algorithms](https://hellogithub.com/periodical/statistics/click?target=https://github.com/trekhleb/javascript-algorithms):包含了多种基于 JavaScript 的算法与数据结构,[中文](https://github.com/trekhleb/javascript-algorithms/blob/master/README.zh-CN.md) 14、[tui.calendar](https://hellogithub.com/periodical/statistics/click?target=https://github.com/nhn/tui.calendar):功能全面的 JavaScript 日程安排日历。虽然项目依赖了 jQuery,但是对于真实项目来说这样做是可以的。此项目适用于多种场景,炫酷的交互和 UI

### Python 项目 15、[marshmallow](https://hellogithub.com/periodical/statistics/click?target=https://github.com/marshmallow-code/marshmallow):使用类似于 ORM 的语法,序列化、反序列化 Python 对象。可以将序列化的对象呈现为标准格式,适用于例如数据校验、返回 HTTP API 的 JSON。示例代码如下: ```python from datetime import date from marshmallow import Schema, fields, pprint class ArtistSchema(Schema): name = fields.Str() class AlbumSchema(Schema): title = fields.Str() release_date = fields.Date() artist = fields.Nested(ArtistSchema()) bowie = dict(name='David Bowie') album = dict(artist=bowie, title='Hunky Dory', release_date=date(1971, 12, 17)) schema = AlbumSchema() result = schema.dump(album) pprint(result, indent=2) # 输出如下 # { 'artist': {'name': 'David Bowie'}, # 'release_date': '1971-12-17', # 'title': 'Hunky Dory'} ``` 16、[redis-faina](https://hellogithub.com/periodical/statistics/click?target=https://github.com/facebookarchive/redis-faina):Redis 性能分析器。提供两种模式分析模式:命令实时、读取日志。其原理是使用 Redis MONITOR 命令,将该命令的结果通过管道传递给 redis-faina 脚本,脚本将返回的信息解析,并汇成总成统计信息。具体信息如下所示: ```shell 注意:分析非常闲的 redis 实例时,分析的结果可能偏差的很多。 时间单位为微秒:ms = 1.0 × 10^-6 seconds Overall Stats ======================================== # 总命令数 Lines Processed 10 # QPS Commands/Sec 1.03 # 出现最多的 key 的前缀 Top Prefixes ======================================== startchart 9 (90.00%) # 请求最多的key Top Keys ======================================== startchart:521xueweihan/hellogithub 9 (90.00%) # 请求最多的命令 Top Commands ======================================== get 9 (90.00%) # 请求响应时间的分布 Command Time (microsecs) ======================================== Median 583914.0 75% 637395.0 90% 5703923.0 99% 5703923.0 # 总耗时最多的命令 Heaviest Commands (microsecs) ======================================== get 9746157.0 # 慢请求列表 Slowest Calls ======================================== 5703923.0 "get" "startchart:521xueweihan/hellogithub" 637395.0 "get" "startchart:521xueweihan/hellogithub" 633909.0 "get" "startchart:521xueweihan/hellogithub" 583914.0 "get" "startchart:521xueweihan/hellogithub" 569207.0 "get" "startchart:521xueweihan/hellogithub" 548745.0 "get" "startchart:521xueweihan/hellogithub" 545493.0 "get" "startchart:521xueweihan/hellogithub" 523571.0 "get" "startchart:521xueweihan/hellogithub" ``` ### Rust 项目 17、[fd](https://hellogithub.com/periodical/statistics/click?target=https://github.com/sharkdp/fd):一个简单、快速、友好的替代 find 命令的方案

18、[rayon](https://hellogithub.com/periodical/statistics/click?target=https://github.com/rayon-rs/rayon):一个易用、无数据竞争的将顺序迭代器转化成并行迭代器。简单说就是原本你的数组只能一个一个地遍历,使用这个库可以并发同时从几个 index 开始遍历,同时也能遍历 map 等类似的数据结构 ### Swift 项目 19、[CocoaDebug](https://hellogithub.com/periodical/statistics/click?target=https://github.com/CocoaDebug/CocoaDebug):iOS APP 内置调试工具,支持 log 日志查看、网络抓包、沙盒查看等功能,代码零入侵。示例代码: ```swift //Step 1. #if DEBUG import CocoaDebug #endif //Step 2. #if DEBUG CocoaDebug.enable() #endif //Step 3. public func print(file: String = #file, function: String = #function, line: Int = #line, _ message: T, color: UIColor = .white) { #if DEBUG swiftLog(file, function, line, message, color) #endif } ```

### 人工智能 20、[AlphaZero_Gomoku](https://hellogithub.com/periodical/statistics/click?target=https://github.com/junxiaosong/AlphaZero_Gomoku):使用 TensorFlow/Pytorch/Theano 实现 AlphaZero 算法,通过自我对弈从零训练五子棋 AI。实现简单、清晰,适合学习、了解 AlphaGo Zero 背后的关键思想和技术细节

### 其它 21、[a-cartoon-intro-to-redux-cn](https://hellogithub.com/periodical/statistics/click?target=https://github.com/jasonslyvia/a-cartoon-intro-to-redux-cn):《看漫画学 Redux》 22、[architect-awesome](https://hellogithub.com/periodical/statistics/click?target=https://github.com/xingshaocheng/architect-awesome):《后端架构师技术图谱》 23、[architecture.of.internet-product](https://hellogithub.com/periodical/statistics/click?target=https://github.com/davideuler/architecture.of.internet-product):知名互联网公司的架构文档 24、[practical-programming-books](https://hellogithub.com/periodical/statistics/click?target=https://github.com/EZLippi/practical-programming-books):实用的计算机相关技术书籍、入门的实用教程、技术网站、博文集合 25、[public-apis](https://hellogithub.com/periodical/statistics/click?target=https://github.com/public-apis/public-apis):(英文)用于 Web 开发的公共 API 集合 ### 开源书籍 26、[sicp-py-zh](https://hellogithub.com/periodical/statistics/click?target=https://github.com/wizardforcel/sicp-py-zh):《SICP Python 描述中文版》[在线阅读](https://wizardforcel.gitbooks.io/sicp-py/content/)

『上一期』 | 反馈和建议 | 『下一期』

---

👉 来!推荐开源项目 👈
微信中搜:HelloGitHub 关注公众号
不仅能第一时间收到推送,还有回馈粉丝的活动
如果文中的图刷不出来,可以点击 这里

## 赞助

UCloud
超值的GPU云服务

CDN
开启全网加速

OpenIM
开源IM力争No.1

七牛云
百万 Token 免费体验
## 声明 知识共享许可协议
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。