分享
 
 
 

书评:C++网络编程,卷2 by Matthew Wilson

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

书评:C++网络编程,卷2 by Matthew Wilson

Title: C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks

Authors: Douglas C. Schmidt and Stephen D. Huston

Publisher: Addison Wesley Professional, 2002

Pages: 384

Price: $39.99

中文版

书名:《C++网络编程:基于ACE和框架的系统化复用》

译者:马维达 http://www.flyingdonkey.com/

出版社:华中科技大学出版社

出版时间:待定(已完稿)

价格:待定

由Douglas Schmidt和Stephen Huston撰写的C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks,是他们的C++ Network Programming, Volume 1: Mastering Complexity with ACE and Patterns的续篇。卷1聚焦于将低级的、特定OS的网络原语封装和抽象进ACE OS适配层和C++ wrapper facade(包装外观)中。卷2建构于这一基础之上,所处理的是框架的各种要点,以及怎样将ACE用于系统实现——这是通过增强并扩展卷1介绍的日志服务示例来完成的。

第1章充当了全书、以及ACE所采用的模式/框架方法的引论。本章的进展艰难而缓慢,直到两位作者开始讨论一些细节问题;我的精神上的迷雾因此而升起来,我已经等不及要读第3章。

第2章通过全面地涵盖服务、服务器,以及配置的某些细节问题,继续引介一些基础性的概念。服务被表征为持续时间短的 vs. 持续时间长的、内部的 vs. 外部的、有状态的 vs. 无状态的、分层的 vs. 整体式的。作者给予了服务器与配置以类似的深入论述。本章的进展也有一点艰难,然而却也有趣而有用。

从第3章往后是本书的实际内容部分,涵盖了ACE中的各种框架。从这时起,我开始感觉到真正的兴趣。每一个框架——包括Reactor(反应器)、Service Configurator(服务配置器)、Task(任务)、Acceptor-Connector(接受器-连接器),以及Proactor(前摄器)——都得到了全面的论述,并且结合了真实世界中需要解决的问题、框架的设计,以及对可移植性和效率所带来的必要约束或短处的确认。

最好的一章是最后一章:关于ACE Streams框架的第9章。通过演示怎样利用ACE_Task、ACE_Module和ACE_Stream类、将重要的功能集成进系统中,本章展示了ACE的效用和力量。这是强大、几乎plug-and-play的网络技术,有助于回答我们所可能有的任何疑问,比如:是否要投入并非微不足道的精力来学习ACE。

在讨论各种OS时,两位作者并无偏袒,这让我觉得愉悦和新鲜(在这个问题上,对Timer类、select(),以及ACE_WFMO_Reactor类的描述特别有趣)。再联系到他们在实现ACE及对其进行描述时所采取的注重实效的方法,这样的公正具有极大的吸引力,并且表明了作者的信心:他们的确创造了一种高质量、且不依赖于平台的解决方案。

总的来讲(尽管并非全部),本书的风格很好。作者大量使用了UML,这促进了本书的连贯性(尽管这也使得我多次冲向我的书架)。而在缺点方面,字体似乎太大了,特别是在图中,以及所摘录的代码中;这是我第一次读到这样一本书,它好像是从许多裂缝中“爆发”出来的。尽管作者(或是他们的编辑)勉力使代码不跨页,我还是希望能得到更多的东西(当然,书籍不可能像1600 * 1200的屏幕一样,但如果使用较小的字体,就可以排印出更多的代码。)

在书中有相当多(61)的副栏(Sidebar),它们提供了让人愉悦的、小小的信息片段。但是,这也有一点让人分心。因为它们有那么多,并且比正文更容易阅读,它们太容易让人把思路给丢掉了。哦,你最好喜欢和reify(使……具体化)这个词呆在一起,因为我从未见过哪本书里面有这么多reify。

书中各章还有一个毛病,它们总是在反复地强调本书的一个基本观点,即复用是好的,ACE推动了复用。这没有必要,因为前两章已经清楚地表达了这一观点。

索引很好,参考文献让人印象深刻;我的书籍“Wish List”的大小因此而翻了一番。而术语表非常的好。所有的书籍都应该有这样的术语表!

很奇怪,尽管本书是由Addison-Wesley出版的,书中有一些图表的绘制很差。比如说,方框和方框间的线段刚刚能让人辨认出来。而且,还有一些制作上的错误:比如以“ACE_Service_uscoreHandler”开头的副栏标题,应该是“ACE_Service_Handler”。但愿我所拥有的只是赠阅版,而你的书不会有类似的问题。

总的来说,要想不对本书留下深刻印象是不可能的(如果这不是过誉的话)。我发现自己马上有了一种强烈的愿望,想要更多地(重新)阅读关于模式的书籍资料(更不用说在参考文献中的那些宝贵财富),并且想要冲出去使用ACE开始开发一个分布式项目。我期望着能够在真实的环境中检验ACE所声称的:在生产率上获得极大的收益,而又不牺牲灵活性和(特别是)效率。引用第1章的总结中的话:“持续的重新发现和发明……使得代价……太长久以来一直居高不下”。

我想要说,对于任何想要掌握分布式网络编程的人来说,本书以及卷1都是有用的——无论他们最终是否使用ACE都是如此。(而如果ACE的声称有一半是真的,我认为ACE就应该是首选的开发库,特别是在面向多种硬件平台的情况下)。它不是一本初学者书籍,也并非特别容易阅读(与Meyers/Sutter/Dewhurst的易于消化的风格非常不同),但它信息丰富、有趣,并且没有给人以遗漏了任何重要内容的印象。但是,它好像的确依赖于大量预备知识,特别是关于模式方法的知识,所以,首先阅读Design Pattern[1]和Pattern-Oriented Software Architecture[2]将会是聪明之举。

附注

[1] Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns (Addison-Wesley, 1995).

[2] Douglas C. Schmidt. Pattern-Oriented Software Architecture, Volume 2: Patterns for Concurrent and Networked Objects (John Wiley & Sons, 2000).

关于作者

Matthew Wilson holds a degree in Information Technology and a PhD in Electrical Engineering and is a software development consultant for Synesis Software. Matthew's work interests are in writting bullet-proof real-time, GUI, and software-analysis software in C, C++, and Java. He has been working with C++ for over 10 years and is currently bringing STLSoft.org and its offshoots into the public domain. Matthew can be contacted via matthew@synesis.com.au.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
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- 王朝網路 版權所有