我用了两年时间去读《Thinking in Java》

我用了两年时间去读《Thinking in Java》路漫漫其修远兮,吾将上下而求索。——题记我用了两年时间去读《Think…

大家好,又见面了,我是你们的朋友全栈君。

我用了两年时间去读《Thinking in Java》

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

                                                                                                                                                               ——题记

我用了两年时间去读《Thinking in Java》。

无论在学校还是在工作,都能听到过来人说,Java编程思想是一本经典著作。于是乎在工作以后,我就买了一本来看看。后来呢,在这断断续续两年时间,精读略读加跳过,终于走马观花了一遍。最终,对《Java编程思想》这部名著,由当时的膜拜憧憬,到如今这老油条般似的写下这篇文章。

毫不掩饰的说,我没能好好读完这本书。17年2月我就去老东家天派实习了,那个时候因为还没毕业,所以老大给我安排的事情并不多。但是我是个不喜欢闲着的人,爱瞎折腾,就去找了一些书籍来看,比如说《重构·改善既有代码的设计》、《大话设计模式》和《人月神话》等,但是,真心来说,读这些经典书籍我收获真的不大。像《重构》这本书,其实需要在有一定的代码量的基础上去进行的;对于《设计模式》其实还相对好理解些,但是要很好的应用到自己工程中,还需要参考大佬们的使用或者Java源码中也有很好的体现;而《人月神话》就离我更远一点了,它主要讲的是时间和人的安排以及工程管理这一块,未及其位,不谋其职啊。最后,我想起了大家经常提到的《Java编程思想》,于是决定在7月份领完毕业证回来后再买来看看。

果然,如果你知道自己要去哪儿,全世界都会为你让路。很幸运,7月-9月公司安排我们先在工厂学习,而这段时间除了学习一些车机组装、锡焊和生产车间的知识外,其他时间就是很闲的,这正是我阅读《Java编程思想》的最佳时间。通过看此书的目录,我知道了要想一下子看完这八百多页,是有点“眼大肚皮小,何怕吃不饱”的。于是定下个目标,在工厂学习这两三个月的时间先看完面向对象前面的知识(也就是6章及以前),等到工作岗位后再学习后面的内容(7章及以后就是关于继承、多态等面向对象的内容了)

我用了两年时间去读《Thinking in Java》

我发现稍微有点不同的是,虽然第3、4、5、6章讲的基本语法,就像当时大学学的C语言面向过程的语言差别不大,比较容易弄懂,但是1、2章讲的是面向对象的知识以及整体概念,需要边看边思考,还要多看几遍才能读懂。然后10月份就正式进入工作岗位,就没那么多时间看书了,基本上只有晚上可以看看,有时甚至一晚上只能看1-2页。因为有的地方,真的需要逐字逐句的读,还得思考。所以啊,就这样断断续续的,到今年初才粗略看完整本书。

怎么说呢,《Java编程思想》是本好书,但是需要静下心来专心阅读。要从它那里学到具体的实践可能不容易,但是它所表达的思想是很值得玩味的。打个不是很恰当的比喻,就像《论语》一样,第一次你读到“之乎者也”可能晕乎乎的,但是第二次再读的时候就能大概懂了,第三次读时基本就能触类旁通啦。也就像王国维在《人间词话》里说的三境界,“昨夜西风凋碧树。独上高楼,望尽天涯路。” “衣带渐宽终不悔,为伊消得人憔悴。” “众里寻他千百度。蓦然回首,那人却在,灯火阑珊处。”读一本好书,需要略读加细读,更要反复读。其所谓,书读百遍,其义自见。

好了,在这最美人间四月天的最后一天,也祝大家五一佳节快乐,幸福平安~^o^~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156590.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • SpringMVC工作原理及其流程

    SpringMVC工作原理及其流程本文介绍SpringMVC的基本原理,对于一个浏览器请求,SpringMVC的处理流程。SpringMVC主要包含一下组件DispatcherServlet-前端控制器HandlerMapping-处理器映射Controller-控制器ViewResolver-视图解析器View-视图Spring的请求流程SpringMVC的核心在于其请求流程,这是使用Spring…

    2022年5月14日
  • es6模板字符串_模板字符串如何实现

    es6模板字符串_模板字符串如何实现<spanclass=”fr”>${(function(){if(list[item].oStatus==0){return`待交易`;}elseif(list[item].oStatus==1){return’已交易’;}else{return’已过期’;}

    2022年8月21日
  • 深究递归和迭代的区别、联系、优缺点及实例对比「建议收藏」

    深究递归和迭代的区别、联系、优缺点及实例对比「建议收藏」深究递归和迭代的区别、联系、优缺点及实例对比1.概念区分递归的基本概念:程序调用自身的编程技巧称为递归,是函数自己调用自己.一个函数在其定义中直接或间接调用自身的一种方法,它通常把一个大型的复杂的问题转化为一个与原问题相似的规模较小的问题来解决,可以极大的减少代码量.递归的能力在于用有限的语句来定义对象的无限集合.使用递归要注意的有两点:1)递归就是在过程或函数里面调用自身;

    2022年6月5日
  • Qt自定义控件–电池

    Qt自定义控件–电池Qt自定义控件-电池如有建议或发现bug,还请大佬们指出。持续更新如需要,留言。

    2022年5月16日
  • android之Random.nextInt(k)陷阱「建议收藏」

    android之Random.nextInt(k)陷阱「建议收藏」API:Returnsapseudo-randomuniformlydistributedintinthehalf-openrange[0,k). 意思就是说,nextInt的取值是0到k-1,不包括k。

    2022年7月22日
  • 一台服务器请求另一台时,用公网IP和内网IP访问时的区别?

    一台服务器请求另一台时,用公网IP和内网IP访问时的区别?假定服务器A的IP=10.1.1.2/24服务器B的IP=10.1.1.3/24,对内提供的服务10.1.1.3:80对Internet提供的服务1.1.1.1:80NAT设备LAN=10.1.1.1/24,WAN=1.1.1.1,NAT设备兼任局域网的网关内网IP访问服务器A访问服务器B内网IP=10.1.1.3:80,直接通信,流量不…

    2022年5月23日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号