当前位置:首页 > 每日看点 > 正文内容

你什么时候感觉学明白Ja了?

卡卷网1年前 (2025-01-10)每日看点220

<>说一下我看过的一些较不错的代码,看了对Ja能力一定会有质的提升,不敢说已经学明白了

国人写的模板引擎,代码质量很高:suchen/jetrick-template-2x

数据结构和算法类的,同时有代码:uptdid/datastructe|kdn251/interviews

Ja写的高性能数据库:jankotek/mapd

Netty实现的高性能RPC,有写博文分析:tang-jie/NettyRPC

Ja编写的原子组件库,内功非常深厚:mindwind/craft-atom

前点评网的一位大牛黄艺华写的爬虫框架:code4craft/wemagic

针对Ja8的一系列代码示例,纯干货无废话:wintere/ja8-tutorial

Ja设计模式的总结以及代码和文章:iluwatar/ja-design-patterns

最优雅的网络请求库,一个Ja文件:kevinsawicki/-request

Ja程序员一个交流社区:s://jq./?_wv=1027&k=5pkxG4

以上是我看过质量都还不错的代码库,难度相对不是特别高,但对于编程思想的提升还是有很大帮助,互联网资源如此丰富的时候我们更需要的是静下心来安静学习和思考而不是一味的追求信息大爆炸,所以我只挑选了对于代码能力有提升的难度不是特别高的分享给各位。

同时也推荐阮一峰的《如何变得有思想》一书,这本得在3年前看的时候对于个人的编程和人生起了一定的改作用,如果你觉得对你有用也可以尝试看看,以上是我的一些个人见解。

最早看的架构探险从零开始写JaWe框架,黄勇写的,算是一种启蒙,作者自己写了一套ioc和aop框架以及mvc请求分发框架。

跟着写了一遍,基本明白了Spring和SpringMVC是怎么工作的

然后顺着思路看了2遍Spring和SpringMVC的源码,一遍是跟着流程走了一边,一遍是基于接口和类的功能整体了解了一遍架构设计

再后来看了howtomcatworks,看了一遍中文的,时隔一年又看了一遍英文的,tomcat的作者亲自讲解tomcat的进化,怎么从一个几十行的弱变成一个servlet容器的,跟着书和各种源码把tomcat的演变写了一遍,正的源码也过了一遍,但是分支太多了

作为一个Jawe开发者,我觉得从tomcat的启动到tomcat接受请求到SpringMVC路由分发请求,到业务代码处理,到模板渲染,到返回对应的信息都应该了解对应的过程,这样遇到很多问题都能第一时间判断出对应的位置,让一些'很神奇'的问题不再神奇

然后就是netty了,看了一遍异步的事件驱动reactor模型的nio实现,对异步,多线程,nio理解上了一个新的台阶

中间穿插读了util包的各种类

Spring几乎已经不需要解释了,用到的都应该去阅读一下,无论是设计思想,代码规范,还是设计模式,接口设计,类加载,都是非常优秀的源码

tomcat太大了,并不是很推荐阅读,源码对于阅读者也不是很友好,但是howtomcatworks还是很值得阅读的

netty本身同样很优秀,但是更重要的是实现的思想

总之阅读源码有什么感觉呢,就好像打开了一扇通往更大世界的大门,能看到厉害的代码技巧,健全的错误异常机制,更重要的是对已有问题的解决方案,和解决问题的思路,这些都是一个程序员成长过程中最好的教材。

jdk就是最好的ja源代码,作者为了性能也是拼了,里面会考虑对gc友不友好,生成的内存屏障指令要尽量轻量级,为了应对伪共享做填充,能用位移的就用位移,不说了,我继续看源码去了。

最近一直有在看JDK源码注释,主要是深入研究下基础知识和并发编程。结合注释看源码,得到的细节非常多。经常可以看到一行代码上有三十四行注释,会把一个方法的使用示例,需要注意的问题,方法实现细节说明等等,全都说的很清楚。如Oject的wait和notify方法。注释里说wait方让当前线程,被放入到一个set中,这个set是和当前对象的监视器关联的。所以这就说明了为什么wait方法为啥需要在syncronizied方法里调用,因为要获得对象的监视器嘛。还有就是线程进入等待后,会让渡出当前对象锁,这个是和线程睡眠的区别。还说明了线程假醒的问题,因此推荐把wait方法放在while循环里。看完后感觉是干货满满,扫除了很多基础方面的知识盲点,受益良多。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/8252.html

分享给朋友:

相关文章

知乎创作收益高吗?

知乎创作收益高吗?

高啊,主要是大多数人不知道怎么做。(这是以前写的,请看到最后)我之前就是傻傻写问答,文章,结果一毛钱收益没有。知乎上收益高的主要有盐选,好物推荐,致知计划,付费咨询。1、盐选吧,是写故事,小说类的天堂,还有就是大咖们的地盘了,难度高。2、好...

2024,java开发,已经炸了吗?

炸的透透的了,坐标南京。一月底,一个好哥们,双休朝九晚六不加班18K,被裁。入职不到两年,算是工资和年终奖才赔了6.5W左右。上周五新公司入职,周六开始加班。现在每周134加班到晚上八点,好像薪资还不如以前高。三月上旬,另一个好哥们,薪资好...

为什么有人觉得华为mate60只值2000?

为什么有人觉得华为mate60只值2000?

你以为买Mate60的人真的傻?真的那么爱国?国庆前,我家那傻子加价800多买了一台Mate60,当时还被我骂他是傻子。可是他说一回到公司就被老板同事朋友看到,拿去反复查看,都在惊叹他这么快就买到新机。跟亲戚朋友聚会,别人一看就知道他买的是...

都是前端框架,为什么用 React 的人会有优越感?

都是前端框架,为什么用 React 的人会有优越感?

上家公司一直搞react,最近第一次写个vue3项目。老板朋友来了看了下页面说:这用vue写的吧。我:是...老板朋友:一看就知道是vue做的。这tm你看一眼页面就知道用的啥框架?这感觉就是,我一直用苹果,偶尔用了下华为打电话,有个人离老远...

如何看待 Luv Letter 表示影视飓风专业性实在是让人失望?

一点儿新进展,另外以下有部分需要关注对于统一变量的问题。这个我在对比上面有写小字解释,我在一开始使用ffmpeg来控制变量。但是发现了不少问题,比如因为遗留bug,会强制将非整数帧的素材转码为VFR导致无法正确帧间对比,因此不考虑,同时尽量...

华为纯血鸿蒙,从此天下三分了吗?

华为纯血鸿蒙,从此天下三分了吗?

万众期待的纯血版 HarmonyOS NEXT 终于是端上来了,主打一个自研,从里到外,从内核到架构,都是自研。用户的激情已经被点燃,可见大家对于纯血鸿蒙的期待,但是鸿蒙系统能不能真正与安卓、iOS三分天下呢?目前来说,还为时过早。iOS和...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。