GitHub 上面的顶级项目都是做什么的?下面是第三周的学习记录:
起因:
前一阵看到同事在用一个名叫 AirFlow 的工具,而我竟然素未耳闻,一番搜索之后发现这个工具 是 Apache 的顶级项目,而且在 GitHub 上有 1w 的 Star。震惊之余,感觉有必要把 GitHub 上常用工具捋一遍,以避免以后发生重复造轮子的情况。计划是把 GitHub 上 5k Star 的项目 都知道是做什么用的,每周看 50 个,数据来源是这里:https://github.com/search?o=desc&q=stars:>10000&s=stars&type=Repositories。
教程资源类
- kamranahmedse/developer-roadmap 各个工种工程师的学习路线图,这个库比较新,参考价值也比较大。
- donnemartin/system-design-primer 学习系统设计的不二教程。基本上认真看完这个库,并且感觉自己已经明白其中奥义的话,国内外大厂面试 System Design 问题都没啥大问题了。有中文翻译。
- jackfrued/Python-100-Days 国内大佬做的一个 Python 100 天教程,中文的。
- Snailclimb/JavaGuide Java 学习 面试指南。一份涵盖大部分 Java 程序员所需要掌握的核心知识。
- TheAlgorithms/Python 用 Python 实现的各种算法。从排序到二分查找,再到区块链,各种都有。面试和考试前可以来参考一下。
- trekhleb/javascript-algorithms 用 JavaScript 实现的各种算法。同样值得参考。
- danistefanovic/build-your-own-x 教你实现自己的框架或者库的各种教程。从一门语言到一个虚拟机,从 Web 框架到操作系统。
- iluwatar/java-design-patterns Java 实现的各种设计模式。
- ossu/computer-science 又一个自学计算机课程的参考,转行的同学可以看下。
- 30-seconds/30-seconds-of-code 号称 30 秒钟就能看完的 JavaScript 代码片段库。
- avelino/awesome-go Go 的一些优质资源整理。
- MisterBooo/LeetCodeAnimation LeetCode 题目的动画题解,用动画的形式呈现解 LeetCode 题目的思路。当你刷题刷不动或者背不过的时候可以来看看这个~
- josephmisiti/awesome-machine-learning 又一个 Awesome 系列的库,机器学习相关。
- xingshaocheng/architect-awesome 又一个后端架构师成长图谱,中文的。
- kdn251/interviews 面试准备。有中文翻译
- awesome-selfhosted/awesome-selfhosted 自己搭建各种私有云服务
- mtdvio/every-programmer-should-know 每个程序员应该知道的一些常识
- yangshun/tech-interview-handbook 又一个面试手册
- goldbergyoni/nodebestpractices Node 的最佳实践
- doocs/advanced-java 互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务、海量数据处理等领域知识,后端同学必看,前端同学也可学习
- papers-we-love/papers-we-love 计算机领域的核心论文
- awesomedata/awesome-public-datasets 公开数据集
- thedaviddias/Front-End-Checklist 前端上下前备忘检查列表
- wasabeef/awesome-android-ui 又一个 Awesome 库,安卓的 UI 资源
- FreeCodeCampChina/freecodecamp.cn 前面提到的 FreeCodeCampChina 的中文版
- scutan90/DeepLearning-500-questions 深度学习 500 问,以问答形式对常用的概率知识、线性代数、机器学习、深度学习、计算机视觉等热点问题进行阐述,以帮助自己及有需要的读者。
大前端 UI
- flutter/flutter Google 新推出了界面工具,使用 Dart 语言。一次编写,可以跨越平台编译到 Android、iOS,其他平台的支持也在开发中。flutter 使用 skia 引擎,自己绘制控件,而没有使用平台提供的原生控件,和 Qt 的实现有些类似。 个人不太看好这个框架,还是比较喜欢 React Native。一方面原因是 Google 有始乱终弃的坏习惯,另一方面是 Dart 没有特别吸引人的地方。
- apache/incubator-echarts 百度出品的前端可视化控件 echarts。现在在 Apache 孵化
- jgthms/bulma 基于 flexbox 的前端 CSS 框架
大前端库
- axios/axios JS 中用的最多的网络请求库,支持 Promise,可以使用 async/await 语法。如果你需要发送 HTTP 请求,直接用这个就对了。
- PanJiaChen/vue-element-admin vue-element-admin 是一个后台前端解决方案,它基于 vue 和 element-ui 实现。有中文文档。
- storybookjs/storybook storybook是一套UI组件的开发环境,可以浏览组件库,查看每个组件的不同状态,交互式开发测试组件,目前支持react、vue、angular等前端框架。 https://sissifly.github.io/storybook/intro.html
- lodash/lodash JavaScript 的一个 utility 库,很多函数都非常常用,不过随着 JavaScript 语言的完善,用的也少一些了。
- ReactTraining/react-router React 的路由组件,非常常用。
后端工具
- netdata/netdata netdata 是 Linux 上的一个性能监控工具。不过我似乎还没有用过,这个有空查一下
- bitcoin/bitcoin 比特币核心代码
- antirez/redis Redis 是一个键值数据库。后端用途非常广,比如说缓存等。
- nvm-sh/nvm Node version manager. Node 版本管理工具,用于在同一台机器上快速切换 Node 版本。
机器学习
- tensorflow/models tensorflow 官方的模型仓库。
- keras-team/keras 相对于 TensorFlow 来说,keras 抽象层级更高。现在 tf 已经内置了 keras
- opencv/opencv 计算机视觉和图形图像相关的最核心的库,各种语言都有绑定。遇到图形图像相关的问题无脑用 opencv 就对了
- scikit-learn/scikit-learn 大名鼎鼎的 sklearn。机器学习的基础组件了,常用的 kNN,LR 等非深度学习的模型基本上都是用 sklearn。配合李航老师的《统计学习方法》使用更佳。
- aymericdamien/TensorFlow-Examples TF 的例子
工具软件
- microsoft/terminal 微软新的官方命令行终端模拟器。长久以来,Windows 上的 cmd 都是一个非常蹩脚的存在,这次微软终于下定决定做了一个非常漂亮的 app。可以直接在微软商店下载。支持 cmd、ps、wsl 等 Windows 上的各种 shell。
- gohugoio/hugo Go 的一个静态网站生成器。其他常用的还有 jekyll 等
编程语言
- denoland/deno Node.js 的作者另起炉灶打造的有一个 JavaScript/TypeScript 运行时,不过现在还没听说过谁在生产环境使用。
其他
- 996.icu 这个不用细说了吧,程序员反对过度加班的集结号,star 就对了。
- public-apis/public-apis 非常非常多的公用 API,如果你需要某个数据的话,可以不急着写爬虫,看看有没有 API 直接能调用~
- chrislgarry/Apollo-11 阿波罗 11 号的源代码。
- tonsky/FiraCode 一款专门为代码设计的字体。特点是行高比较矮,可以支持显示更多行。而且支持连字(ligatures)
- kelseyhightower/nocode 这个项目没有任何代码。
- NARKOZ/hacker-scripts 一个俄罗斯黑客的常用脚本
- gothinkster/realworld 这个项目非常屌。全站克隆了一个 Medium 网站,非常值得学习