分享
 
 
 

Modern C++ Design

王朝c/c++·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

就像<<Ruminations on C++>>一样,<<Modern C++ Design>>关注的首先是Design,它明确的将这种设计命名为了“基于Policy的编程”,而不再用“模块化”、“封装变化”等泛泛的术语;其次是C++,核心是TypeList;如果<<Ruminations on C++>>是C++初创的十几年中Classic C++的设计指南的话,类似TypeList的思想则可能是最近几年和未来几年Modern C++的设计指南

1,policy

关键是将class分解为一组正交的行为;正确的分解出来之后,它叫policy也好,依赖注入也好,静态也好,动态也好,都无所谓,只需用手边的语言或工具将它们组织起来即可,良好的设计不依赖于它的名字,基于policy的编程和依赖注入基本是一回事,关键是你基于哪些policy,你注入啥

2,编译器:被忽略的计算机

编译器对代码所做的检查,即是编译器的接口,是很重要和有用的计算能力,所有编译期技术皆依赖于此;这些可利用的计算能力实际上包括所有C++语法规则: 类型系统、大小不能为0的数组、用到的类或函数必须有定义、sizeof()、模板实例化,等等

3,局部类

可用于在针对接口编程的系统中隐藏实现

4,Int2Type, Type2Type, TypeSelection....

额外的中间层

5,typelist

简直就是LISP,最简单却又最具表达力,一切拜抽象、递归所赐

template<T, U> struct TypeList{

typedef T Head;

typedef U Tail;

}

6,Command Pattern 与 Functional Programming

在非FP的编程语言中进行FP风格的编程时,关键的一点是状态和时序;Command对象封装了状态,也封装了真正eval的时机,使Command对象的客户可以进行FP风格的编程

7,仿函数与函数指针

有基本兼容的语法和语义,区别之一是当存在重载函数时,函数指针有歧义,此时可通过赋值或转型来选出感兴趣的那个重载函数

8,GP 与 OO

在泛型程序设计中,template实参对其相应形参的语法替换是很典型的情况;template的处理发生在编译之前,这让你得以在源码层级有所动作;OO与此并无不同,它的威力来自于“名称(name)”与“实值(value)”的后期(编译后)绑定;因此,OOP支持二进制组件形式的复用,GP支持源码层级的复用;与二进制码相比较,源码天生具有更多信息和更高级别,所以泛型编程支持更丰富的构件,但其代价是较弱的执行期动态性;你无法通过STL完成CORBA所能完成的功能,反之亦然,两种技术相互补充

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有