# 十 开源项目推荐 ## Java教程类开源项目推荐 给大家推荐 15 个新手也能看懂的 Java 教程方向的开源项目。这些项目无论是对于你学习 Java 还是准备 Java 方向的面试都非常有帮助。 正如我第一个要推荐的开源项目 JavaGuide 说的那样:开源项目在于大家的参与,这才使得它的价值得到提升。 ### [JavaGuide](https://github.com/Snailclimb/JavaGuide "JavaGuide") - **简介** : 一份涵盖大部分 Java 程序员所需要掌握的核心知识。 - **推荐理由** : JavaGuide是我在大三的时候开源的一个项目。这个项目主要是记录一些我觉得比较重要的Java核心知识和一些常见的面试题。我觉得这个项目可以对大部分Java程序员都有帮助,不伦是我们面试还是学习 Java的话,都应该有很大的帮助。 ### [CS-Notes](https://github.com/CyC2018/CS-Notes "CS-Notes") - **简介** :技术面试必备基础知识、Leetcode 题解、后端面试、Java 面试、春招、秋招、操作系统、计算机网络、系统设计。 - **推荐理由** : CS-Notes 是我要推荐的第二个项目。这个项目主要记录了技术面试必备的基础知识比如计算机网络、数据结构和算法,还有操作系统。除此之外,这个项目的 Leetcode 题解部分也十分给力。如果大家需要准备面试或者复习基础知识的话,一定不要错过这个项目。 ### [advanced-java](https://github.com/doocs/advanced-java "advanced-java") - **简介** :互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务、海量数据处理等领域知识。 - **推荐理由** :这个项目大部分内容是由《Java面试突击第一季》整理而来,视频地址我会放在评论区。如果你想要了解消息队列、分布式缓存、分布式搜索引擎、Dubbo这些东西的话,很好,这个项目十分适合你!即使你的 Java 基础不太好,相信你也可以从中有很大的收获。 ### [miaosha](https://github.com/qiurunze123/miaosha "miaosha") - **简介** :秒杀系统设计与实现.互联网工程师进阶与分析。 - **推荐理由**:大家听这个名字就应该知道这个项目和秒杀系统设计有关。是的,这个项目主要就是教你如何进行秒杀架构设计。秒杀架构设计师面试的时候面试官经常问到的东西。这个项目主要包括的技术有:jmeter压测、消息队列rabbitmq、分布式缓存redis、mysql主从复制、rpc框架dubbo以及nginx。 ### [architect-awesome](https://github.com/xingshaocheng/architect-awesome "architect-awesome") 1. **简介** :后端架构师技术图谱。 2. **推荐理由** : 推荐的理由主要是它对于后端知识体系的涵盖特别全,如果大家在学习方向上有疑问的话不妨去看看这个项目。 ### **[toBeTopJavaer](https://github.com/hollischuang/toBeTopJavaer "toBeTopJavaer")** 1. **简介** :Java 工程师成神之路 2. **推荐理由** : 阿里巴巴的一位老哥维护,这位老哥也是我一直以来的目标,非常优秀。这个项目几乎涵盖了 Java 工程师必备的所有知识,作者已经更新了部分内容,目前仍在继续更新中。 ### **[technology-talk](https://github.com/aalansehaiyang/technology-talk)** 汇总java生态圈常用技术框架、开源中间件,系统架构、数据库、大公司架构案例、常用三方类库、项目管理、线上问题排查、个人成长、思考等知识 ### [JavaFamily](https://github.com/AobingJava/JavaFamily "JavaFamily") 1. **简介**:【互联网一线大厂面试+学习指南】进阶知识完全扫盲。 2. **推荐理由** :开源这个项目的老哥和我年龄一样大,非常优秀,同样是我学习的榜样!这个项目中有Java大厂面试指南方面的内容,作者目前已经把分布式缓存篇的所有文章的更新完了,需要这方面知识的老哥不妨去看看。 ### **[JCSprout](https://github.com/crossoverJie/JCSprout "JCSprout")** 1. **简介**:处于萌芽阶段的 Java 核心知识库。 2. **推荐理由** :这个项目的作者算的是原创技术领域写的比较出名的一个了,我本人也是觉得他的文章对于大部分都很有帮助。这个项目就收录了他记录的一些 Java 核心知识比如 [如何优雅的使用和理解线程池](https://github.com/crossoverJie/JCSprout/blob/master/MD/ThreadPoolExecutor.md)、[设计一个百万级的消息推送系统](https://github.com/crossoverJie/JCSprout/blob/master/MD/architecture-design/million-sms-push.md)等等。 ### **[fullstack-tutorial](https://github.com/frank-lam/fullstack-tutorial)** 1. **简介**:后台技术栈/架构师之路/全栈开发社区,春招/秋招/校招/面试。 2. **推荐理由** :包括的知识面比较广,除了 数据结构和算法这些基础知识,还包括 Java 后端、一点前端、一点 Python内容。可以当作参考来看,内容比较杂。 ### 附加5个不不错的开源项目 1. **[3y](https://github.com/ZhongFuCheng3y/3y)** : 从Java基础、JavaWeb基础到常用的框架再到面试题都有完整的教程,几乎涵盖了Java后端必备的知识点 2. **[JGrowing](https://github.com/javagrowing/JGrowing)** :Java 成长路线,但学到不仅仅是 Java 3. **[interview_internal_reference](https://github.com/0voice/interview_internal_reference)** :2019年最新总结,阿里,腾讯,百度,美团,头条等技术面试题目,以及答案,专家出题人分析汇总。 4. **[effective-java-3rd-chinese:Effective Java中文版(第3版)](https://github.com/sjsdfg/effective-java-3rd-chinese)** :Java 四大名著之一,本书一共包含90个条目,每个条目讨论Java程序设计中的一条规则。这些规则反映了最有经验的优秀程序员在实践中常用的一些有益的做法。 1. [《OnJava8](https://github.com/LingCoder/OnJava8)》:又名《Java编程思想》第5版, Java 四大名著之一。