Java技术宅 潜水
  • 2发帖数
  • 1主题数
  • 0关注数
  • 0粉丝
开启左侧

读不懂源码?那是由于你还没看过这篇文章!

[复制链接]
Java技术宅 发表于 2019-5-19 16:12:50 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

                               
登录/注册后可看大图


                               
登录/注册后可看大图

Java开辟人员都知道,阅读源码是一个非常好的学习方式,在我们日常工作中或多或少都会接触些开源代码, 比如说最常用的Struts,Hibernate,Spring,这些源码的普及与应用程度远超过我们的想象,正因为很多人使用,也在推动着源码不停地去美满。这些优秀的源码中有着多年积淀下来的英华,这些英华黑白常值得我们学习的,不管我们当前是什么水平,通过反复阅读源码能力能有所提升,小到对源码所提供的功能上的使用更加熟练,大到使我们的步伐设计更加完美优秀。但是,纵观我们身边的人。可以或许做到通读源码的真的是少之又少,究其缘故起因不外乎以下几点。

  • 阅读源码绝对算得上是一件费时费力的工作,需要读者耗费大量的时间去完成。而作为开辟人员,毕竟精力有限,实在没办法拿出太多的时间放在源码的阅读上。
  • 源码的复杂性, 任何一款源码经历了多年的发展与提炼,其复杂程度可想而知。当我们阅读源码的时候,各人都知道需要通过工具来跟踪代码的运行,进而去分析步伐。但是,当代码过于复杂,环环相扣绕来绕去的时候,跟进了几十个甚至几百个函数后,这时我们已经不知道自己所处的住置了,不得不再重来,但是一次又一次的,最终发现自己根本无法驾取它,不得不放弃。
  • 有些源码发展多年, 会遇到各种各样的题目,并对题目进行了办理,而这些题目有的对于我们来说甚至可以用莫名其妙来修饰,偶然候根本想不出会在什么情况下会发生。我们选择各种查阅资料,查询无果,最终放弃。
无论基于什么样的缘故起因,放弃阅读源码始终不是一个明智的选择,因为你失去了一个跟大师学习的机会。而且,当你读过几个源码之后你会发现,他们的思想以及实现方式是想通的。这就是开源的利益。随着各种开源软件的发展。各家都会融合别家优秀之处来不停美满自己。如许,到最后的结果就是所有的开源软件从设计上或者实现上都会变得越来越相似,也就是说当你读完某个优秀源码后再去读另一个源代码, 速度会有很大提升。
以我为例,Spring 是我阅读的第一个源码,几乎耗尽了我将近半年的时间,此中各种煎熬可想而知,但是当我读完Spring再去读MyBatis只用了两周时间。当然,临时不论它们的复杂程度不同,至少我阅读的时候发现有很多相通的东西。当你第一次阅读的时候,你的重点一定是在源码的明白上,但是,当你读完第一个源码再去读下一个的时候,你自然而然地会带着批判或者说挑剔的眼光去阅读:

  • 为什么这个功能在我之前看的源码中是那样实现的,而在这里会是如许实现的?
  • 这此中的道理在那里,哪种实现方式更优秀呢?
而通过如许的对比及探索,你会发现,自己的进步快得难以想象。
我们已经有些纠结了,既然阅读源码有那么多的利益,但是很多同学却因为时间或能力的题目而不得不放弃,岂不是太可惜?
因此今天小编在这里给各人发送一份粉丝福利:
关注我的头条号【Java技能宅】,然后私信发送“源码“,即可免费领取一本《Spring源码深度解析.pdf》,希望能对正在Spring道路上摸索的同仁们提供一些帮助。

                               
登录/注册后可看大图

精彩评论3

 楼主| Java技术宅 发表于 2019-5-19 16:40:48 | 显示全部楼层
读不懂源码?那是因为你还没看过这篇文章!
稀奇TQT古怪 发表于 2019-5-19 16:39:43 | 显示全部楼层
源码
xtiaoshi 发表于 2019-5-19 16:59:18 | 显示全部楼层
转发了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

猜你喜欢
在线客服邮箱
wxcy#wkgb.net

邮箱地址#换为@

Powered by 创意电子 ©2018-现在 专注资源实战分享源码下载站联盟商城