前记:
最近看了rongjun的一片文章:自己动手实现jdk代理类。按照上面的例子敲完才发现,JDK动态代理 实现底层原来如此简单,只是大量的使用了反射,类编译,类加载一些常规的东西
而且本质也是如实此简单。然后回头看源码,天呢,实现很长很长,当然里面加了很多各种异常的处理,各种抽象。。。呵呵,私以为。如果所有JAVA实现的框架,技术 ,如果都能如 rongjun这种代码一样,我想大家自己跑一遍并解读源码,我想大家就不会被各种拗口名词,各种不断新出的技术术语 所蒙蔽所不解。。所谓万变不离其宗,各种复杂的东西,拨开迷雾本质是:各种基本元素的不同花样组合。此时,终于明白以前我的一位架构师导师的苦心了,他告诉我,要把JSR熟读搞懂。JSR就是JAVA的各种复杂基本元素。
以上是我对于“动手自己实现XXX”的感悟。
鉴于做为一个有点小追求技术人员,仅仅满足于怎么用这个问题,简直太肤浅太肤浅了.....
明白 为什么 非常重要,归综下来以下好处。
- 明白底层原理,那么在面对众多不同的产品时才能明白其利弊,才能做最基本的技术选型,也就才能达到更好的使用。
- 世上无原创,读懂各种技术,各种术语 的底层思想,这些都是解决问题的套路,可以为我所用,如果滚瓜烂熟各种套路,如果再掌握最基本的元素,根据场景 实现自己的框架 ,那岂不是信手拈来。如果这个场景使用非常广泛,那不就推广出自己发布的框架吗,哈哈哈。。。
不过知易行难,加油~
因此必须要求自己知道常用技术底层的实现原理,其中自己动手去实现一个精简版的技术 是 加深对一个技术原理理解的 非常好的方式。我需要保持 ,故列出一个清单,当想到去实现的一个技术 ,就记录下来并持续 自己动手~
----------------------------------------------------------------------------------------------------------------------------------
- 自已动手实现springIOC
- 自己动手实现SpringAOP
- 自已动手实现JDK动态代理
- 自己动手实现RPC框架
- 自己动手实现.....
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)