给这本新思维,评价为中性。习惯面向对象的人得有些心理准备,因为本书强烈依赖编译时多态绑定。把本书前半部分,1至4章,仔细梳理一通之后,印证了我的直觉:难免奇技淫巧。据我观察:语言机制本身处在发展过程中,所以技术细节可能会有部分过时。(从0x新标准看,static_assert已在语言机制上得以实现,也提供了变长参数模板。)
开头还平易,作者宣布policy-based class(基于方略的类)的思想,把行为精心分解并封装为类型,当作模板参数和基类,布署在host class(宿主类)上,并预告将施行于后续相关模式的构造。但接下来,作者玩起了花样洗牌,cpp facility(cpp设施)杂耍。这些设施,挤榨编译期的各种机制之效能,也是炫目的关键。它们依赖模板递归,重载,专门化,sizeof,typedef,整数计算,多重继承,相与搭建而来。作者强调了多重继承的应用,这点值得注意。如能在典型实例和上下文中,展示这些精致的facility,以及这些手法之间的联系,可能不会太过令人费解。这大概是苛求。在观赏完诸如typelist、产生散乱的类继承体系,等等这些五色目迷的尖巧设计之后,钦佩作者拿模板如面团揉搓。总而言之,营养虽好,恐难消化。
对后面那些设计模式实作,抱审慎心理为上(但也不反对)。虽然喜欢Generalized functor,Visitor,实际中要注意和别人协调,遵循局部适用和全体融洽的约定。曾热衷于使用boost::regex,lambda之类的玩艺,把它们包藏在局部,发挥作用的同时,把可能的副作用限制在局部,不要影响其他人,基于以上考虑:如果模板库简洁而恰到好处,不用白不用。这节话其实就是和侯捷的序不同调,这不尽是个体之间的分歧,这是循不同路径挣钱的人之间的客观分野。
新思维 or 新戏法
对“新思维 or 新戏法”的回应
《C++设计新思维》热门书评
-
新思维 or 新戏法
9有用 1无用 浮德 2008-08-17
给这本新思维,评价为中性。习惯面向对象的人得有些心理准备,因为本书强烈依赖编译时多态绑定。把本书前半部分,1至4章,仔细梳理一通之后,印证了我的直觉:难免奇技淫巧。据我观察:语言机制本身处在发展过程中,所以技术细节可能会有部分过时。(从0x新标准看,s...
-
提供一种设计的思维
4有用 1无用 飞羽 2012-11-30
看到豆瓣上很多人说这本书不太好,大量地使用奇技淫巧,很多东西平时用不上,我也承认确实如此。而且大量地使用模板也很消耗编译的时间(也是优点,也是缺点),不过我觉得没必要因为这些就说这本书本身不好。至少在我看来这本书大大地开阔了我的视野,让我知道了C++可以这样用,至少以后在分析某些源码的时候知道了为何...
-
只适合程序狂人
2有用 2无用 不管花落 2009-03-29
这本书强调的是模板的使用。模板主要用于类库的编写。如果你要自己编写一个STL,Boost这种东西当然需要自己写模板类,但是如果只是使用STL,Boost这些类库的时候,这本书里面的内容根本用不上。 &nbs...
-
开启泛型设计新思潮
1有用 2无用 魏理布赫 2008-07-11
第一次读这本书的时候,觉得书中讲的很多东西很出神入化!C++竟然能这样用?然后马上觉得自己根本不懂C++了!然后做了3年无聊的开发,3年后使用boost时,再对比它和boost的代码,就只能算是很初级了。boost中对C++的应用只有用“变态”来形容了!很不幸,我现在写的代码也很“变态”了!写过的最...
-
侯捷怎么这么喜欢翻译C++名著?
1有用 1无用 风雪夜归人 2014-04-02
很不喜欢他的翻译风格,好书都被他给翻译了,郁闷 !也许对喜欢他风格的人来说,越多越好,但对讨厌其风格的人来说,就太坑爹了。。算了,读原版去吧。。。。。。。。。。。。。。。。。。。。。。...
书名: C++设计新思维
作者: [美] Andrei Alexandrescu
出版社: 华中科技大学出版社
原作名: Modern C++ Design : Generic Programming and Design Patterns Applied
副标题: 泛型编程与设计模式之应用
译者: 侯捷 | 於春景
出版年: 2003-03
页数: 323
定价: 59.8
装帧: 平装
ISBN: 9787560929064