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操作系统
3. Java基础
- 在Java中,你真的会日期转换吗
- 聊聊ThreadlLocal和引用的那些事
- [一个JIT激进优化引起的可见性误解] (https://github.com/javagrowing/JGrowing/blob/master/Java%E5%9F%BA%E7%A1%80/Java%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/%E5%B9%B6%E5%8F%91%E6%A0%B8%E5%BF%83%E5%B7%A5%E5%85%B7/%E4%B8%80%E4%B8%AAJIT%E6%BF%80%E8%BF%9B%E4%BC%98%E5%8C%96%E5%BC%95%E8%B5%B7%E7%9A%84%E5%8F%AF%E8%A7%81%E6%80%A7%E8%AF%AF%E8%A7%A3.md)
4. 分析设计
5. 常用框架
5.4日志框架
6. 服务端开发
- 解密分布式事务框架-(Seata)Fescar
- 深度剖析一站式分布式事务方案Seata(Fescar)-Server
- 深度剖析一站式分布式事务方案Seata-Client (https://github.com/javagrowing/JGrowing/blob/master/%E5%88%86%E5%B8%83%E5%BC%8F/%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1/%E6%B7%B1%E5%BA%A6%E5%89%96%E6%9E%90%E4%B8%80%E7%AB%99%E5%BC%8F%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1%E6%96%B9%E6%A1%88Seata-Client.md)
- 再有人问你分布式事务,这篇文章扔给他
前车之鉴,后事之师。
额外的一些:
面试经验:
有幸结识了一个群友,水平很厉害,他自己也对Java技能知识图谱有一定的总结:Java服务端知识技能图谱
JGrowing中大部分文章目前都没有写,希望你能参与进来一起,怎么做?
- 联系我,加入JavaGrowing组织,参考此issue。
- 选出一个你感兴趣的主题,进行原创,当然如果你发现了一些很优秀的文章(能联系上作者的),联系作者进行转载。
- 对学习路线有什么建议,或者有什么不对的地方提出PR进行修改。
只要你参与进来,你将获得:
- 开源项目参与者称号一枚。
- 锻炼了git技术。
- 每个参与者都将会获得首页的提名感谢。
- 学习了更多的技术。
- 帮助你宣传个人影响力
如果不想太麻烦的同学可以推荐自己的阅读过的优秀图书,附上豆瓣评分和自己的书评即可。对于原创文章的要求如下:
- 语言简单明了,逻辑清晰易懂。
- 对于讲解的内容尽可能挖掘扩展,不能局限于表面。
- 不允许粘贴各种营销广告。
- 允许宣传自己的一些私人广告(如个人公众号,博客等)。