纠结的书名
从去年4月份开始,写了整一年,所有的周末、晚上全都耗在了书上,终于把书给写完了,不写是不知道,写书和博客差别太远了。博客只用把注意力集中于一个点,不会从整体上把握脉络,而且不会考虑读者会不会跟不上,在举例和用词上都不用花太多精力,和面对面交流也不一样,面对面交流也许十分钟就能说明白的问题,用写书的方式可能需要花一天,甚至更多。
我看过大量的书,非常多,但绝大部分的书都只是知识点的讲解,并不会从实战的角度讲解最佳实践方案。写这本书的目的就是为了将我自己在实战中的心得分享出来,如何从大局着眼,而不是一个个零散的知识点着眼,做出品质高的网页——其实品质高是个大话题,主要可分成“可维护性”和“性能”两个大方向,但实话实说,我感觉两者重要性的权重是不相同的,可以七三开甚至八二开。“性能”这东西如果不是在特殊情况下,其实是很难看出其重要性的——至少在前端领域是如此的,而“可维护性”却是和我们日常工作有着紧密关联的,稍有经验的工程师都会知道“可维护性”有多重要。我的书其实只讲到了“可维护性”,并没有怎么讲“性能”,所以,只算是“高品质”的一个方面。
在起书名的时候,真的是非常纠结。起初我自己想叫《如何打造高可维护性的前端代码》,但后来和福川商量的结果,先后改了几次名字《前端开发的艺术》《打造高品质前端代码——揭密前端开发》,最后决定叫做《编写高质量代码——提高Web前端代码的可维护性》,但临近出版了,福川说,这个书名的重点究竟落到了“高质量上”,还是落到了“可维护性”上呢?要不,叫《《编写高质量代码——Web前端开发最佳实践》如何?
虽然我很喜欢这个名字,也一直觉得我的确在致力于寻找最佳实践。但,就像鲍勃大叔在《clean code》的序中所说,写代码有不同的风格流派,我只是将我自己的风格流派分享出来,我不能说他一定是最好的,我能代表的只是我鲍勃大叔流派。同样的,我不敢用“最佳”二字来形容我的实践方式,因为不同的工程师的关注点不同,同样的问题不同的着眼点会采用不同的方法,没有万金油的“最佳”,只有“最适合你的需求”的方式。就像肯贝克说极限编程一样,最重要的不是“实践的方法”,而是方法背后的“原委”。我想通过这本书跟各位分享一下我阿当流派的前端实践方法。看这本书,希望各位不要停留在具体方法上,也不要在一些细节上过于较真,我的本意是想和各位分享一下一些思路,而非具体技巧。
书名还真的纠结,用什么名字好呢?