读读《Java编程思想》

这是一本怎么样的书?

         这是第一本我认认真真读的专业外文书。每次见到那些书厚厚的,重重的,心里面总会有一种莫名的兴奋。《Java编程思想》毫无疑问是计算机教程里面最为经典的书籍之一,是学习Java的必读圣经。学习Java,市面上有非常多30天从入门到精通等等,但是里面的内容就非常浅薄,而且千篇一律,从来不说为什么要这么做,Java的设计者为什么这样设计,总的来说:从来不会跟我们说原因(更不用说原理)。我觉得这本书最伟大之处在于它总是从动机去分析Java的各种机制,看完之后不会让人死记硬背其中的规律。

         我见过的大部分Java的书籍都给我一种这样的感觉:

1、  这里有这么个机制,

2、  它可以做这些事,请你把它的用法记住

3、  恭喜你掌握了!

         而《Java编程思想》总是给我另外一种奇妙的感觉:

1、  你是不是老为这种情况烦恼?呵呵,Java刚好有这么一个机制可以解决你的问题

2、  它是这么做滴,balabalabala….

3、  你还可以试着这么运用这个机制…为什么这么用?因为balabalabala…..

4、  恭喜你看完这一章,但别以为你懂了,关于这一章你还有很多不懂滴!

         这就是这本书奇特的地方,语言非常具有亲和力,感觉就像是一个体贴的老师在教一个愚蠢的学生一样,而且循循善诱,充满耐心。我见过那些经典的书籍都那样,作者在编写的时候都是怀着一个分享的心去写(编程思想的PDF是能免费下载的),语言充满亲和力,读起来让人感觉作者就是身边一个充满智慧的朋友一样。

该怎么样去读这一本书?

         看到这本800多页的皇皇巨著,心理难免畏惧。而且这本书内容极多,假如要由头往下啃反而显得有点不现实,一定会忘得清光的。其实《Java编程思想》是一本工具书,怎么样理解?你可以想想《新华字典》,没人会喜欢把新华字典读一遍,都是需要的时候才会去翻一翻而已,而且多翻了就会懂比较多的字了。而《Java编程思想》正是一本和字典类似的工具书,需要的时候翻一翻,多翻了就会懂Java到底是什么了。

         或者你也会问:我查字典因为我遇到我不懂的字,我翻编程思想是不是该我遇到编程问题的时候才翻呀?那当然不是!不过最好就是有问题再翻,那样印象深刻很多。那问题就来了:哪来那么多问题要去翻《Java编程思想》啊?

         我的答案就是:把整本编程思想啃一遍。没问题就找问题,我觉得最重要的是带着问题去翻书。

         具体来说,我是这么干的。我已经把Java粗浅地学了一遍,一般而言可以提出一些编程上的问题,所以在阅读新的一章时,我会针对那一章先想几个问题,编程思想的作者Bruce Eckel先生也非常聪明,在每一章开头地时候都会引诱我们说:你想知道XXXX吗?学完这一章你就理解了。于是我们便怀着一个或多个问题,开始在这一章中寻找答案,而且过程中你会发觉自己异常认真也异常聪明。在遇到实在不懂的一段话,一般来说我会要求自己针对那一段话写一个问题。也就是分割问题,获得子问题。这样做,可以反映出自己对这段话的理解程度有多深,你写下问题重新看一下,问题越是简单粗浅,证明你越不懂这一段话,假如你可以提出一个有点深度的问题,证明你已经接近这一段话的核心思想了。分割问题的另外一个重要作用是:方便你去解决子问题。这时候,我们可以针对子问题去翻阅之前我们阅读过的章目(很少会越届去翻阅后面的章目,需要的时候作者会提示说在某某章我们会进一步探讨,所以不用担心这一件事)。这样,带着问题去翻阅之前阅读过的章目,这是一种非常有效的学习方法。坚持这样做,你的书上会满是问题的笔记和解答的笔记。假如可以做到这样,花一大段时间去啃一遍这本编程思想也非常值得。

         这本书至此,我已经阅读了三分之一,上面的方法让我受益匪浅,但自己惰性难移,并没有做到问题一一解决。我打的代码很少,我认为打代码产生的疑虑才是最实际的,最有解决意义。通过《Java编程思想》一步一步地扫除写代码中的疑虑,才是真正进步的时刻。编程思想最大的魅力是在我们掌握里面的知识后,能够写出合理的代码。

写在最后的话

         对于此经典的学习,我最大的不足之处就是写代码不足,这样做会让我忽略很多基础且很重要的问题。此书名字写得非常好,《Java编程思想》(英文:Thinking in Java),就像书中开篇所言:上帝赋予人类说话的能力,而语言又创造了思想,思想是人类对宇宙的度量。程序语言也是我们一个表达的工具,在庞大而复杂问题前,只有熟悉程序语言其中特定的思想,我们才能通过程序语言简洁地表达和解决我们的问题。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值