(1)我们在智商上并没有先天的优势,当然也没有劣势。每个国家都有聪明人和笨蛋,彼此彼此。
(2)我们在实际开发项目时,只关注如何运用现成的工具软件和第三方软件包来完成项目,多数人对那些工具软件和第三方软件包本身的构成没有兴趣。投其说好,计算机书籍市场上介绍如何使用工具软件的书占多数。
(3)西方的新技术出现后,它是用英语来描述的,经过翻译传到国内,由于翻译水平参次不齐,使得本来简洁明了的思想变得含混晦涩,甚至让人误解。象侯捷、熊节和潘爱民这样的优秀的翻译家和作家为数不多。
(4)在我们技术领域,受商业化的影响,有浮躁的气息。技术商业广告误导我们,只要你能口若悬河的谈论那些最新出现的技术名词(千篇一律是几个英文单词的缩写),你就会看上去象把握了技术潮流。
当我在创作《Tomcat》、《精通Struts》和《精通Hibernate》时,翻阅了不少英文书籍。我仔细阅读了Hibernate的创始人Gavid King的《Hibernate in action》,我深刻的意识到这位大师之所以能写出这样的软件,得益于扎实的Java技术功底。Hibernate建立在一系列的Java基础知识之上,要学习Hibernate,你必须熟悉Java对象模型、对象的生命周期、缓存、不可变类与可变类的概念,以及Java集合框架等。Hibernate本身运用了诸如工厂模式等优秀的设计模式。
当我写完《精通Hibernate》,思考下一步写什么的时候,出发点是能写一本让读者和自己都一劳永逸的书,最好是一本抵得上十本的书。我想到专门写一本融汇了面向对象思想、Java语法、虚拟机运行原理、设计模式和性能优化的Java书。如果读者掌握了这些内容,再去掌握新的Java框架和软件包就会驾轻就熟,甚至无师自通。对此,我曾经在JavaThinker论坛上发了一个贴子:“我是不是有必要写一本Java基础编程方面的书? ”,许多热心的网友参与了讨论。网友tywo45为我想得很周到,他说:“我上两天心里还在捉磨着孙小姐会不会写一本J2SE方面的书。没想到今天就看到这个帖子了(挺巧合的)。Java书籍我看的比较多,好一点的有《Java2核心编程》影印第六版的、《Thinking in Java》中文版第二版。其它的书感觉上有点杂而不系统,就我个人而言对我帮助最大的是《Java2核心编程》影印版清华大学出版的,现在国外已有第七版的了。所以如果要出J2SE方面的书的话,就应该效仿这本书,讲深刻一点。让人真正认识编译器的内部的一些工作,而不是只讲一些语法,因为语法已经不大成为问题了。还有就是注重一些编程思想及思路。如果真要出版一本好一点的J2SE方面的书,估计难度比你前面四本书要大!”。