HelloGitHub 第 42 期

linq4c

如果你想在 C 中使用隔壁 C# 的 linq 方法,那么不妨来使用这个项目!这是它的 C 语言版。实现了 linq 的大部分方法(60+)。现在它还在不断完善中,欢迎更多的小伙伴加入共同维护

bool WhereCallback(void *item) {
    char *str= (char *)item;
    return str[0] == 'h';
}

void *SelectCallback(void *item) {
    return newStr("%s_1", (char *)item);
}

char *str1 = "huang", *str2 = "hai", *str3 = "feng";

ArrayList array = arrlist_new();
arrlist_append(array, str1);
arrlist_append(array, str2);
arrlist_append(array, str3);

Linq *lq = From(array);
ArrayList result = 
    lq
    ->Where(lq, WhereCallback)
    ->Select(lq, SelectCallback)
    ->ToArray(lq);

for(int i = 0; i < arrlist_size(result); i++) {
    printf("%s/n", arrlist_get(result, i));
}

HelloGitHub 第 42 期

C++ 项目

nebula

Nebula Graph 是一款开源数据库,目标是为超大规模的图数据提供高并发、低延时的读、写及计算服务。目前是世界上唯一能够容纳千亿个顶点和万亿条边、并提供毫秒级查询延时的图数据库解决方案。特点:

HelloGitHub 第 42 期

CSS 项目

iCSS

该项目围绕 CSS 话题,讲述了 CSS 相关的技巧、动画实现

HelloGitHub 第 42 期

Go 项目

kubesphere

一款在主流容器调度平台 Kubernetes 之上构建的企业级分布式多租户容器管理平台。提供简单易用的操作界面以及向导式操作方式,在降低用户使用容器调度平台学习成本的同时,极大降低开发测试、运维的日常工作的复杂度。 中文文档

HelloGitHub 第 42 期

starcharts

生成 GitHub 星图的项目

HelloGitHub 第 42 期

ultimate-go

该项目是作者在学习 Go 过程中,对 Go 源码以及涉及到的相关的计算机基础知识的心得与总结。适合 Go 学习者阅读与学习。快来和作者一起深入了解 Go 源码,了解背后的计算机理论和 Go 的设计思想

Java 项目

easyexcel

使用简单、上手快速、占用内存小且避免内存溢出的 Java 处理 Excel 工具。示例代码

/**
* 最简单的读
* <p>1. 创建excel对应的实体对象 参照{@link DemoData}
* <p>2. 由于默认异步读取excel,所以需要创建excel一行一行的回调监听器,参照{@link DemoDataListener}
* <p>3. 直接读即可
*/
@Test
public void simpleRead() {
    String fileName = TestFileUtil.getPath() + "demo" + File.separator + "demo.xlsx";
    // 这里 需要指定读用哪个class去读,然后读取第一个sheet 文件流会自动关闭
    EasyExcel.read(fileName, DemoData.class, new DemoDataListener()).sheet().doRead();
}

lila

一款基于 Scala 语言,完全免费、开源、没有广告、支持多语言的在线国际象棋游戏。 在线试玩

HelloGitHub 第 42 期

tablesaw

一款包括数据框和可视化库,可用于加载、转换、过滤和汇总数据的 Java 实用程序。用 Tablesaw 处理数据会节省您的时间和精力,它还支持描述性统计,并且能够与 Smile 机器学习库完美集成。最近两年数据分析师职业大火,做好数据分析,就离不开数据可视化框架。Java 工程师掌握一种数据可视化库势在必行,示例代码:

public class BoxExample {

  public static void main(String[] args) throws Exception {
    Table table = Table.read().csv("../data/tornadoes_1950-2014.csv");

    Layout layout = Layout.builder().title("Tornado Injuries by Scale").build();

    BoxTrace trace =
        BoxTrace.builder(table.categoricalColumn("scale"), table.nCol("injuries")).build();
    Plot.show(new Figure(layout, trace));
  }
}

HelloGitHub 第 42 期
simple-java-mail

一个轻量级 Java 邮件框架,支持复杂、自定义的发送电子邮件业务。包括经过身份验证的代理、附件、嵌入式图像、自定义标头和属性、强大的地址验证等,亮点是支持身份代理等功能,防止其他其他邮件服务拦截邮件

XUpdate

一套基于 Android 的全量版本更新整体解决方案。它除了提供 Android SDK 外,还附带了 Spring Boot 搭建的后台服务以及 Vue.js 编写的后台管理界面。主要解决中小企业 Android 版本管理混乱的问题,提供可定制化的解决方案。该框架提供了完全可插拔的版本更新,同时为了让使用者使用方便,还提供了后台服务和管理界面,使用的都是现下最流行的技术。完全做到灵活、方便,并提供了大量丰富的文档供大家参阅

XUpdate.newBuild(getActivity())
.updateUrl(mUpdateUrl)
.isAutoMode(true) // 如果需要完全无人干预、自动更新,需要 root 权限【静默安装需要】
.update();

HelloGitHub 第 42 期

JavaScript 项目

star-battle

一个使用 JavaScript ES6、Canvas 开发的飞船射击类游戏。 在线试玩

HelloGitHub 第 42 期

markdown-nice

能够自定义样式的 Markdown 编辑器。支持内容和自定义样式浏览器中实时保存、上传图片、脚注、公式等,输出的内容可一件复制到微信公众号、知乎、掘金、博客园和 CSDN 等一系列平台。极大的减轻了微信公众号文章的排版和编辑工作

HelloGitHub 第 42 期

marktext

一个简单且优雅的开源 Markdown 编辑器,支持 Linux、macOS 和 Windows 下载地址
。功能:

  • 实时预览(所见即所得)和简洁明了的界面
  • Markdown 扩展,例如数学表达式和 emoji 表情
  • 输出 HTML 和 PDF 文件
  • 各种编辑模式:源代码模式、打字机模式、专注模式
  • 等等

HelloGitHub 第 42 期
leonsans

这是一个用 JS 编写的 Sans Serif 半衬线字体。Leon Sans 允许动态更改字体粗细并在 HTML 5 的 Canvas 元素中创建自定义动画、效果或形状, 点击
查看动画效果。PS:这个字体是作者来庆祝他刚出生的婴儿 Leon 的哦

HelloGitHub 第 42 期

taro-music

基于 Taro 与网易音乐 API 开发的网易云音乐小程序。技术栈为 typescript+taro+taro-ui+redux 目前主要是着重小程序端的展示,可以通过项目学习上述几个技术栈的使用和实战,从而能够快速使用 Taro 开发一个属于你自己的小程序,目前已实现的主要功能点如下:

  • 用户登陆
  • 我的关注列表
  • 最近播放列表
  • 歌曲播放页面
  • 等等

HelloGitHub 第 42 期

Objective-C 项目

JHBlog

该项目整理了作者从初级 iOS 开发到中级的晋级之路的相关知识集合

Python 项目

healthchecks

基于 Python3 和 Django2 的 Cron 定时任务监控工具,同时支持多种定时任务失败时的告警方式

HelloGitHub 第 42 期

GeneralNewsExtractor

基于《基于文本及符号密度的网页正文提取方法》论文用 Python 实现的正文抽取器,可以用来提取 HTML 中正文的内容、作者、标题。之前我看到这篇论文也想实现该抽取工具,但是我因为懒癌晚期躺下了,感谢 kingname
‘带趟’ :v:

HelloGitHub 第 42 期

bokeh

一个交互式的数据可视化 Python 库,专注于在 Web 浏览器中实现美观、直接的数据可视化功能。使用它可以让你快速和轻松地创建交互式图表、仪表板和数据可视化程序。流式数据集的可视化效果如下图:

HelloGitHub 第 42 期

Ruby 项目

ruby-pinyin

可以把汉字转化为对应的拼音的库,同时能够较好的处理多音字的情况。正确处理多音字,示例代码如下:

PinYin.of_string('南京市长江大桥', :unicode)
return ["nán", "jīng", "shì", "cháng", "jiāng", "dà", "qiáo"]

能够正确的将“长”转为“chang2”,而不是“zhang3”

Swift 项目

EFQRCode

一个轻量级的、用来生成和识别二维码的纯 Swift 库,可根据输入的水印图和图标产生艺术二维码

HelloGitHub 第 42 期

其它

reverse-interview

如果当面试官问“你还有什么要问我的吗?”的时候你毫无头绪,那这个项目正是你所需要的。 中文

pull

一个 GitHub App,它可以让 fork 的仓库自动同步,保持和原仓库同步的神器。很多同学参与开源时会 fork 项目,但无法取得原项目的最新更新。此 Github App 可以很好的解决这个问题,截至目前已有几万仓库使用,截至目前已经自动生成了 70 万个 PR,该数字还在持续增加。注意:如果 master 有更改需要备份后使用,具体见 英文文档

HelloGitHub 第 42 期

chinese-colors

中国传统颜色在线手册, 在线体验

HelloGitHub 第 42 期

navi

命令行辅助工具,有了它再也不用担心找不到历史输入过的命令、忘记命令等诸多烦恼

HelloGitHub 第 42 期

教程

advanced-java

一份 Java 工程师进阶知识点集合,内容涵盖:高并发、分布式、高可用、微服务等领域知识。这些知识点不局限于 Java 语言,后端的同学也可以从中收获很多, 在线阅读

nodebestpractices

Node.js 最佳实践》 中文

HelloGitHub 第 42 期

Nodejs-Roadmap

Node.js 技术栈学习指南。内容侧重于 Node.js 服务端,包含:Node.js 基础知识、Node.js 核心模块、主流框架实践、缓存、数据库、消息中间件、DevOps、HTTP 协议以及 Node.js 在微服务等, 在线阅读

c9-python-getting-started

微软出品的零基础 Python 入门教程,内容浅显易懂。包含示例代码、演示的 PPT、 配套的 Youtube 视频

机器学习

ChineseNLPCorpus

中文自然语言处理数据集

albert_zh

海量中文预训练 ALBERT 模型

HelloGitHub 第 42 期

cherry

简单易用的文本分类器。适用多种语言,自带两个预训练模型,使用预训练模型进行分类只需一行代码。使用自己的数据集进行定制训练也只需要十行代码。轻松达到高精确率,召回率。同时该库支持自定义分词算法、分类算法等。示例代码:

>>> res = cherry.classify(model='harmful', text=['她们对计算机很有热情,也希望学习到数据分析,网络爬虫,人工智能等方面的知识,从而运用在她们工作上'])
>>> res.word_list
[(2, '她们'), (1, '网络'), (1, '热情'), (1, '方面'), (1, '数据分析'), (1, '希望'), (1, '工作'), (1, '学习'), (1, '从而')]
>>> res.probability
# 返回结果分别对应 赌博,正常,政治,色情 4个 类别的概率
array([[4.43336608e-03, 9.95215198e-01, 3.51419231e-04, 1.68657851e-08]])

原文 

https://hellogithub.com/periodical/volume/42/

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » HelloGitHub 第 42 期

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址