JGrowing
Introduction: Java is Growing up but not only Java。Java 成长路线,但学到不仅仅是 Java。
Tags:
Java is Growing up but not only Java。Java 成长路线,但学到的不仅仅是 JAVA。
维护人员(排名不分先后)
@林大塔, @lzx2005,@TGhoul,@crossoverJie,@zhangyd-c,@ygmyth,@kinglaw1204,@easepan,@xuyuji
缘起
时常有一些朋友问起一个 Java 程序员到底应该怎么学习?公司的项目对自己没啥帮助,到底应该怎么提升?这些问题想必对很多人都是一个通病,包括我自己也是。所以我对于这些问题通常只能基于自己的眼界进行答复,也不知道这些东西对于他们是否有效。
某一天看见了一个有关 Java 面试的 Github 开源项目,但是其目的性太强了,我觉得作为一个程序员来说面试终究是少数时候,对于一个程序员来说更多的应该是提升自己,创造更多的价值。于是我就萌生了建立 JGrowing(Java 成长路线)这个项目的想法,希望由更多的人一起来共建,分享自己成长路线,帮助更多的人。
介绍
JGrowing 不是属于某个人的项目,而是属于组织项目。我的想法是由我最初画一个大致的 Java 学习路线脑图,而其中的具体的文章我会不断的更新,当然最好是由你来和我们一起更新和修改文章和路线图。

学习 Java 可以按照下面的顺序来学习,当然你也可以查漏补缺查看自己感兴趣的部分:
1. 计算机基础
这部分和语言无关,苦练基本功,为以后做好准备。
1.1操作系统
- 走进科学之神秘的零拷贝
1.2 计算机网络
1.3 数据库
- 为什么开发人员必须了解数据库锁
2. 数据结构和算法
2.1 数据结构
2.2 算法
3. Java 基础
- 在 Java 中,你真的会日期转换吗
- 聊聊 ThreadlLocal 和引用的那些事
- 一个 JIT 激进优化引起的可见性误解
3.1Java 特性
3.2 基本程序设计
3.3Java 并发编程
- 异步技巧之 CompletableFuture
- 你应该知道的乐观锁-高效控制线程安全的手段
3.4JVM
- jvm 内存区域详解
4. 分析设计
- 你的项目应该如何分层
设计原则
设计模式
- 面试官所认为的单例模式
领域驱动设计
5. 常用框架
5.1Spring 全家桶
- 聊聊 Spring 的那些扩展机制
5.2ORM 框架
5.3 常用工具包
5.4日志框架
- 如何编写 Log4j2 脱敏插件
数据库连接池
其他框架
- 无锁队列 Disruptor
- 深入解密来自未来的缓存-caffeine
6. 服务端开发
- 浅析如何设计一个亿级网关
6.1 服务监控
6.2 服务器
6.3 服务防护
6.4 容器云
6.5 服务优化
- 异步化,你的高并发大杀器
- 并行化-你的高并发大杀器
- 你应该知道的缓存进化史
- 如何优雅的设计和使用缓存?
7. 分布式
7.1 中间件
- 你应该知道的 kafka
- 如果再有人问你分布式 ID,这篇文章扔给他
- 如果再有人问你分布式锁,这篇文章扔给他
- 谈谈数据一致性
7.1.1 分布式事务
- 解密分布式事务框架-(Seata)Fescar
- 深度剖析一站式分布式事务方案 Seata(Fescar)-Server-Server.md)
- 深度剖析一站式分布式事务方案 Seata-Client
- 再有人问你分布式事务,这篇文章扔给他
7.2 批处理系统
7.3 流处理系统
7.4 搜索引擎
8. CaseStudy
前车之鉴,后事之师。
如何排查问题
额外的一些:
基础工具:
面试经验:
- 一道“史上最难”java 面试题引发的线程安全思考
- 你会这道阿里多线程面试题吗?
扩展阅读:
有幸结识了一个群友,水平很厉害,他自己也对 Java 技能知识图谱有一定的总结:Java 服务端知识技能图谱你的参与
JGrowing 中大部分文章目前都没有写,希望你能参与进来一起,怎么做? - 联系我,加入 JavaGrowing 组织,参考此issue。
- 选出一个你感兴趣的主题,进行原创,当然如果你发现了一些很优秀的文章(能联系上作者的),联系作者进行转载。
- 对学习路线有什么建议,或者有什么不对的地方提出 PR 进行修改。
只要你参与进来,你将获得:
- 开源项目参与者称号一枚。
- 锻炼了 git 技术。
- 每个参与者都将会获得首页的提名感谢。
- 学习了更多的技术。
- 帮助你宣传个人影响力
文章范例
如果不想太麻烦的同学可以推荐自己的阅读过的优秀图书,附上豆瓣评分和自己的书评即可。对于原创文章的要求如下:
- 语言简单明了,逻辑清晰易懂。
- 对于讲解的内容尽可能挖掘扩展,不能局限于表面。
- 不允许粘贴各种营销广告。
- 允许宣传自己的一些私人广告(如个人公众号,博客等)。
联系我
我的个人公众号如下,如果想加入微信群,可以通过公众号加我微信号好友,拉你进入群聊

