路漫漫其修远兮,吾将上下而求索

简介: 路漫漫其修远兮,吾将上下而求索原文链接:https://copyfuture.com/blogs-details/20190904170623796lx5xqkpl3znvh3z 挺久没写文章了,几个月前跳了个槽,把很多计划都有点打乱了。

路漫漫其修远兮,吾将上下而求索

原文链接:
https://copyfuture.com/blogs-details/20190904170623796lx5xqkpl3znvh3z

挺久没写文章了,几个月前跳了个槽,把很多计划都有点打乱了。
天算不如人算,是该继续一些系统的前行和进步了。

由于本人最近在写书(是的,从去年开始,现在还没写完,想过放弃,但更想坚持下去,这辈子没坚持过什么,但我想把这件事先坚持下去),写公众号文章的时间不会有很多,所以不定时更新是肯定的,我尽量确保以后一个能够产出至少一篇以上的文章。

当然,我如果遇到好的文章,也会进行分享给大家。

工作也有几年了,也有过迷茫,不知道路在何方,不知道技术的前方等待我的是什么,技术图谱不知道看了多少遍,几年前看到的技术和现在看到的Java技术图谱,壮大了何止一倍。一般人看到很容易就放弃了,

在这里推荐一篇github的后端架构师技术图谱:
https://github.com/xingshaocheng/architect-awesome

现在不讲图谱,我们从源码开始。后续会慢慢对图谱中的知识点进行讲解。

暂时聊聊第一阶段的规划
第一阶段:
JDK源码的分析(看源码太累?每篇每次分析一个类不过分吧,我们一起成长,5分钟之内可以让你看完的那种,类的关联性很强的那种,将会在下篇进行继续讲解)

应该会从JDK的工具包开始,例如List、Map等;
然后是lang包下的String、StringBuffer、StringBuilder、Integer、Thread等;
io包下的类肯定也是不能少的,FileReader、InputStream等;
当然,util下的一些类也不能漏掉了,ConcurrentMap、Lock等;

读这些源码时,只需要读懂一些核心类即可,比如和ArrayList类似的二三十个类,对于每一个类,也不一定要每个方法都读懂。像String有些方法已经到虚拟机层了(native方法),如hashCode方法。

另外,希望能从源码中读到作者的思想,程序员大部分开发中都是些增删查改的业务逻辑。比如一个需求 我们用了几十行代码写了。感觉没问题,但是别人可能用几行就搞定了,要学习别人的思路。
还有设计模式和优雅,抛开公司业务代码(还记得某个人说了一句话:屎山上堆屎),在JDK源码中,以及很多的开源框架中,代码都是比较优雅的,很简洁。可以学习源码的代码写法。

经常看点源码,相信你面试可以走出那种六亲不认的步伐。

当然,你不需要直接去看源码,后面公众号的文章,我会与你们一块阅读源码。

当然,也许源码中会出现很多其他知识点的耦合,那我会在后面的文章中,进行一一讲解,尽量不放过知识盲点,当然,太底层的肯定是会跳过啦,比如native方法的实现等等

推荐一个阅读源码的步骤:

  1. 先阅读构造方法、注释;将注释翻译成自己理解的文字
  2. 看不懂暂时做个标记,后面你还会遇到类似的,看多了就懂了
  3. 边看边写自己理解的注释,这样不会那么无趣
  4. 看类的方法的实现,看不懂某个部分就先看下基础知识,实在看不懂回到第二步
  5. 最后理解作者的思想,为什么会这么去实现

我会新建一个github仓库,存储jdk1.8的源码,在后面的阅读源码过程中,每次都会将解析过的类进行标注,我的所有理解,以及注释都会在里面。

期待与您共同进步!

第二阶段,第一阶段写完再说咯,我也挺懒的~
当然,每次文章都是源码会很无趣(我会控制在5-10分钟内能阅读完的那种,可惜我不会画图,不然图解源码倒是个不错的选择),我尽量在每篇文章的次文章进行发表有趣的事情。

吾非大神,与汝俱进

未关注公众号的可以来波关注,后续公众号直接推送JDK文章:

程序编程之旅

目录
相关文章
|
Java Linux
Linux下安装JDK9
Linux下安装JDK9
132 0
|
定位技术 API
百度地图和腾讯地图开发经纬度的位置是互换的
百度地图和腾讯地图开发经纬度的位置是互换的
481 0
|
编解码 数据挖掘 计算机视觉
详细解读PVT-v2 | 教你如何提升金字塔Transformer的性能?(附论文下载)(二)
详细解读PVT-v2 | 教你如何提升金字塔Transformer的性能?(附论文下载)(二)
455 0
谷歌搜索留痕怎么做?有没内容限制?
因为量很大,比如我生成100万个页面,总会有几千甚至几万收录的,当然有一个前提是,你必须有自己的蜘蛛池。
490 0
谷歌搜索留痕怎么做?有没内容限制?
|
缓存 安全 Ubuntu
linux提权
linux提权的文章,多多指点
249 0
linux提权
|
存储 机器学习/深度学习 API
快速入门DVC(四):下载数据与模型文件
你可能会有如下的问题: 我们如何在项目之外使用这些制品? 我们如何下载模型来部署它? 我们如何下载特定版本的模型? 我们如何在不同的项目中重用数据集?
|
安全 应用服务中间件 网络安全
RH358配置Web服务器--自动化执行 Web 服务器配置
RH358配置Web服务器--自动化执行 Web 服务器配置
229 0
RH358配置Web服务器--自动化执行 Web 服务器配置
|
人工智能 安全 物联网
ARMv9能给ARM带来新一轮腾飞吗?(安全篇)
ARMv9另一大技术点是安全,本文会重点介绍ARMv9的CCA(Confidential Compute Architecture)技术和MTE(Memory Tagging Extension)技术。最终,结合两大方向,给出我对这个问题的结论。
ARMv9能给ARM带来新一轮腾飞吗?(安全篇)
|
存储 JavaScript Linux
3分钟带你了解版本控制系统的发展历史
3分钟带你了解版本控制系统的发展历史
363 0
|
数据处理 Python
Django的Paginator分页器使用示例
Django的Paginator分页器使用示例
93 0