作为共享各种技术、框架、库和集合的第一平台,GitHub在提供数量规模庞大的共享资源的同时,随之而来的问题是如何才能找到对你而言最有用的库。为此,本文整理出这一份包含10个超棒GitHub库的清单,能够为所有软件工程师提供巨大的价值。这些库均具备大量 GitHub stars,显示其关联性、流行性和效用。
其中一些库能够帮助大家学习新的知识,还有一些能够帮助构建很酷的东西,所有这些都将为开发者们成为更好的软件工程师提供帮助。
1. Build Your Own X
GitHub stars:61,300🌟
GitHub 地址:https://github.com/danistefanovic/build-your-own-x
这个奇妙的资源库是一个大量教程的集合,教你如何构建属于自己的技术。并且提供了示例,来帮助理解如何构建命令行工具、操作系统、搜索引擎、3D 渲染器等。
曾经梦想过创建自己的编程语言?或属于自己的 Docker、Git 吗?
那么,这个库是你的不错选择。
2. Free Programming Books
GitHub stars:139,000🌟
GitHub 地址:https://github.com/EbookFoundation/free-programming-books
尽管该库的名字是 Free Programming Books(免费编程书籍),但它提供的功能可远远不止如此。该库具有多语言版本,包含免费在线课程、交互式编程资源、问题集和有竞争力的编程,以及 podcast 和编程练习。
不过其中大部分内容是编程书籍,书籍数量十分可观。
3. Oh My Zsh
GitHub stars:106,000🌟
GitHub 地址:https://github.com/ohmyzsh/ohmyzsh
Oh My Zsh 是一个社区驱动的开源框架,用于管理 Zsh 配置。Zsh 既是一种交互式shell,也是很多开发者使用的一种强大的脚本语言。
Oh My Zsh 具备功能多样的插件和相当美观的主题,允许用户进行自定义设置。虽然你能能需要花费一些功夫来启动和运行它,不过网上有许多不错的教程以及其他开发者的示例,可以帮助你找到最适合自己的设置。
4. Coding Interview University
GitHub stars:104,000🌟
GitHub 地址:https://github.com/jwasham/coding-interview-university
如果你想成为Amazon、Google或 Facebook这种大企业的软件工程师,那么为期数月的Coding Interview University短期学习计划会非常适合你。它的目标人群是软件工程新人(不过仍需了解基础的CS知识),并对如何成为可靠性工程师或运维工程师提供建议。
作者创建该库的初衷是制定个人 to-do list 来追踪自己的学习过程。通过每天8-12 小时的学习,数月后,他最终得到了梦想中的工作——Amazon的软件开发工程师。
Coding Interview University 能够帮助你准备Google,、Microsoft、Facebook 等企业的技术面试。请充分利用它吧。
5. Gitignore:.gitignore 模板合集
GitHub stars:97,100🌟
GitHub 地址:https://github.com/github/gitignore
该库的作用正如它的名字一样:有用的.gitignore 模板集合。每在 GitHub 上创建一个新项目库,你必须具备一个.gitignore 文件来过滤上传内容。.gitignore 文件内容随着项目和语言的变化而变化。该库包含适用于几乎所有语言和框架(如Rails、Python、Perl、Laravel、Java 等)的模板,甚至具备适用于 Fortran 的模板哦!
6. System Design Primer
GitHub stars:86,200🌟
GitHub 地址:https://github.com/donnemartin/system-design-primer
这个库是一个超棒的软件工程师资源库,可以帮助学习如何设计大规模系统,进而成为更好的工程师。该库针对这一宽泛主题提供大量的、系统化的资源。
由于系统设计通常是众多企业技术面试的必备内容,该库还为工程师们提供了技术面试支持,包含学习指南、面试建议、面试问题及解决方案、交互式学习 Anki 卡牌集合,以及交互式编程挑战。
7. Public API
GitHub stars:73,100🌟
GitHub 地址:https://github.com/public-apis/public-apis
该库包含可用于项目和应用的免费 API 列表,覆盖各种主题,如商业、动画、动物、新闻、金融、游戏等。
其中 cats API 和 dogs API 能够提供猫狗的图像。还提供了一些更有用的 API,如Gmail API 或 Google Analytics API。
这个库集合了大量 API,读者可以自行查看。
8. The Art of Command Line
GitHub stars:70,100🌟
GitHub 地址:https://github.com/jlevy/the-art-of-command-line
开发者经常忽略如何处理命令行,但对于工程师而言,使用命令行有助于提高工作效率和灵活性。该库包含在 Linux 环境中使用命令行的有效技巧和建议,同时还包含适合 Windows 或 macOS 系统的内容。通用建议适用于其他基于 UNIX 的操作系统。该库对入门者和经验丰富的开发者均适用。
尽管该库似乎没有得到积极维护,但它仍能提供非常好的建议,帮助开发者使用命令行。读者可以 fork 该库,并自行维护。
9. Java 算法和数据结构
GitHub stars:64,700🌟
GitHub 地址:https://github.com/trekhleb/javascript-algorithms
该库包含多个 Java 常用算法和数据结构示例。每个示例被标注为「入门」或「高级」,以表明难度。此外,该库还包含哈希表、堆区(heap)、队列(queue)、栈区(stack)、math、字符串(strings)、集合(sets)等的示例。
10. Developer Roadmap
GitHub stars:98,600🌟
GitHub 地址:https://github.com/kamranahmedse/developer-roadmap
该库包含的大量图表展示了成为前端、后端或研发工程师需要采取的不同学习路径以及要学的技术。初看令人觉得吃不消,但这个库对在这一快速变化的行业中的趋势和工程师需要的技能提供了很有用的指导。
该库每年都会更新,以反映生态系统变化。
希望这些数据库能够为大家提供帮助,并且可以使用它们来成为更好的软件工程师。感谢阅读~
原文链接:https://medium.com/better-programming/10-extraordinary-github-repos-for-all-developers-939cdeb28ad0
欢迎点击“京东智联云”了解更多精彩内容。
以上信息来源于网络,由“京东智联云开发者”公众号编辑整理,不代表京东智联云立场。