专业游戏门户,分享手游网游单机游戏百科知识攻略!

嗨游网
嗨游网

java最值得读的源码(有哪些Java源代码看了后让你收获很多)

来源:小嗨整编  作者:小嗨  发布时间:2023-03-15 11:17
摘要:既然没人,我自荐一发我写的mvc框架biezhi/blade对于学习J2EE的框架有很大的帮助,代码里使用了各种设计模式、事件机制、Java8语法、代码量也很小,web服务使用netty作为支持,对HTTP/网络想研究的一定是你的必读品。...

既然没人,我自荐一发我写的mvc框架biezhi/blade

java最值得读的源码(有哪些Java源代码看了后让你收获很多)

对于学习J2EE的框架有很大的帮助,代码里使用了各种设计模式、事件机制、Java8语法、代码量也很小,web服务使用netty作为支持,对HTTP/网络想研究的一定是你的必读品。目前在写 Blade-In-Action 小书。

我之前也写过如何实现ioc/mvc框架的简单博文,可以在这个biezhi/Java-bible仓库里看到。

也说一下我看过的一些比较不错的代码,看了对Java能力一定会有质的提升

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

数据结构和算法类的,同时有测试代码:buptdavid/datastructure|kdn251/interviews

Java写的高性能数据库:jankotek/mapdb

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

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

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

针对Java8的一系列代码示例,纯干货无废话:winterbe/java8-tutorial

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

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

Java程序员一个 交流社区:https://jq.qq/?_wv=1027&k=5pkxbG4

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


本文地址:IT知识频道 https://www.eeeoo.cn/itzhishi/926658.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!


IT知识
小编:小嗨整编
相关文章相关阅读
  • 上海老街攻略(上海有哪些老街可以逛)

    上海老街攻略(上海有哪些老街可以逛)

    今天给大家分享一下上海老街攻略的知识,也给大家讲解一下上海有哪些老街是可以去的。如果你能偶然解决你正面临的问题,别忘了关注这个网站,现在就开始!上海夜场介绍上海的夜景相当多。1.外滩观光,外白渡桥,苏州河~邮局在那里。这是看陆家嘴高楼。2...

  • 台山景点(广东江门台山市六个值得一去的旅游景点)

    台山景点(广东江门台山市六个值得一去的旅游景点)

    台山景点(广东江门台山值得一去的六个旅游景点)台山市:原名新宁,广东省县级市,由江门市管理,位于珠江三角洲西南部,毗邻港澳,南临南海。分别与新会、开平、恩平、阳江为邻,拥有中国之一侨乡、内外两座泰山、排球之乡、粤曲之乡、中国民间艺术之乡、...

  • 库尔勒景点(库尔勒景点有哪些地方)

    库尔勒景点(库尔勒景点有哪些地方)

       今天给大家分享一些关于库尔勒的景点的问题(库尔勒的景点在哪里)。以下是小编对这一问题的总结。让我们来看看。1。铁门关它位于库尔勒以北八公里的库鲁克塔格山。两千多年前,丝绸之路从这里进入孔雀河沿岸30公里长的峡谷。峡谷蜿蜒幽深,岸壁...

  • 什么叫工作能力强(工作能力表现在哪些方面)

    什么叫工作能力强(工作能力表现在哪些方面)

    工作的能力是指个人独立与客户和同事的沟通能力,以及处理一般事件的能力。还有就是领导委派办理一件关于公司的事情,能够做到有独立的组织协调能力,有足够的工作能力强的人有以下表现:做事不拖泥带水,做什么事都是马上。执行力强。积极主动,不管事情有...

  • 美白护肤方法(美白护肤方法有哪些)

    美白护肤方法(美白护肤方法有哪些)

       今天给大家分享几个关于美白护肤方法的问题(有哪些美白护肤方法)。以下是小编对这个问题的总结。让我们看一看。介绍:12种美白护肤方法。你认识几个?我必须知道护肤的方法,否则我会成为黑炭包青天。下面介绍12种美白护肤方法。了解他们的朋...

  • 淑女装(淑女装品牌有哪些牌子)

    淑女装(淑女装品牌有哪些牌子)

       今天给大家分享一些关于舒女装的问题(舒女装品牌有哪些)。以下是小编对这个问题的总结。让我们来看看。之一,懂得穿衣打扮,懂得表达。从某种意义上说,我比别人强。你知道《淑女与淑女》的风格吗?会穿衣打扮,会表达自己,从某种意义上来说,比...

  • 候鸟都有哪些?(候鸟原来有这几种类型)

    候鸟都有哪些?(候鸟原来有这几种类型)

    有哪些候鸟?(候鸟曾经有这些类型)“燕子,穿着华丽的衣服,每年春天都来这里……”对于很多人来说,这可能是对候鸟最早的描述。在中国大部分地区,繁殖中的家燕(Hirundorustica)只能在春夏两季看到。繁殖完毕后,它们就开始带着当年出...

  • 城市摩天轮(广州哪些地方有摩天轮坐)

    城市摩天轮(广州哪些地方有摩天轮坐)

    城市摩天轮(广州哪里有摩天轮)不知道什么时候开始的。一些城市的一些旅游区和游乐园喜欢建摩天轮。有些摩天轮建在城市的制高点,或者核心景观带,成为城市的标志。同时摩天轮一般都比较高,高挂空,视线非常好,360度视角。它成为了城市的眼睛,是观赏...

  • 周排行
  • 月排行
  • 年排行

精彩推荐