大小:85.58M
更新时间:23-08-29
系统:Pc
版本:v
大规模C++程序设计是C++程序设计领域有影响力的著作,由软件开发大师John Lakos撰写,刘冰,张林共同翻译,周尚波校正。本书从物理设计和逻辑设计两个方面,全方位阐释从事大型和超大型C++软件开发时应该遵循的一系列设计规则,结合大量编程实例,深入探讨设计具有易测试、易维护和可重用等特性的高质量大规模C++软件产品的各种技术和方法,为使用C++开发大型软件系统提供专业指南。
《大规模C++程序设计》由软件开发大师JohnLakos亲笔撰写,是C++程序设计领域最有影响力的著作之一。作者结合自己多年从事大规模C++项目的开发经验,详细介绍了大规模C++程序设计涉及的一系列概念、理论、原理、设计规则及编程规范,并通过大量真实世界的编程示例,深入解析物理设计和逻辑设计的一些新概念和新理论,阐明了在从事大型和超大型C++软件工程时应该遵循的一系列设计规则,论述了设计具有易测试、易维护和可重用等特性的高质量大规模C++软件产品的方法。
《大规模C++程序设计》共分为三部分,共11章。一部分(第1~2章)介绍一些C++语言开发的基础知识、通用设计模式,以及C++项目开发中应该遵守的一些基本软件设计原则;第二部分(第3~7章)全面介绍了优秀物理设计的基本概念,设计的基本单元组件、物理层次结构、系统分层技术、隔离技术等,详细阐述了如何利用合理的物理设计层次结构,通过隔离、增量和分层测试以更低的成本获得更高的可靠性,如何利用分层技术降低系统内的链接依赖性,如何利用隔离技术减轻或消除编译时依赖性,并讲解了如何将这些技术应用到超大型系统中;第三部分(第8~10章)讲解了逻辑设计问题,包括组件总体设计需要考虑的重要因素,详细阐述了创建一个组件的功能接口所涉及的问题,以及在大型项目环境中实现对象的特定组织问题。
第0章概述
0.1从C到C++
0.2使用C++开发大型项目
0.3重用
0.4质量
0.5软件开发工具
0.6小结
第一部分基础知识
第1章预备知识
1.1多文件C++程序
1.2 typedef声明
1.3断言语句
1.4编程风格
1.5迭代器
1.6逻辑设计表示法
1.7继承与分层
1.8最小化
1.9小结
第2章基本规则
2.1概述
2.2成员数据访问
2.3全局名字空间
2.4包含卫哨
2.5冗余包含卫哨
2.6文档
2.7标识符命名规则
2.8小结
第二部分物理设计概念
第3章组件
3.1组件与类
3.2物理设计规则
3.3依赖关系
3.4隐含依赖
3.5提取实际的依赖
3.6友元关系
3.7小结
第4章物理层
4.1软件测试的一个比喻
4.2一个复杂的子系统
4.3测试"好"接口的难度
4.4可测性设计
4.5隔离测试
4.6非循环物理依赖
4.7层次编号
4.8分层和增量测试
4.9测试一个复杂子系统
4.10可测性与测试
4.11循环物理依赖
4.12累积组件依赖
4.13物理设计质量
4.14小结
第5章层次化
5.1循环物理依赖的一些来源
5.2升级
5.3降级
5.4不透明指针
5.5哑数据
5.6冗余
5.7回调方法
5.8管理者类
5.9分解
5.10升级封装
5.11小结
第6章隔离
6.1从封装到隔离
6.2 C++结构和编译时耦合
6.3局部隔离技术
6.4整体的隔离技术
6.5过程接口
6.6隔离或不隔离
6.7小结
第7章包
7.1从组件到包
7.2注册包前缀
7.3包层次化
7.4包隔离
7.5包群
7.6发布过程
7.7 main程序
7.8启动
7.9小结
第三部分逻辑设计问题
第8章组件架构
8.1抽象和组件
8.2组件接口设计
8.3封装程度
8.4辅助实现类
8.5小结
第9章函数设计
9.1函数接口说明
9.2在接口中使用的基本类型
9.3特殊情况函数
9.4小结
第10章对象实现
10.1成员数据
10.2函数定义
10.3内存管理
10.4在大型项目中使用C++模板
10.5小结
附录A协议层设计模式
附录B实现一个与ANSI C兼容的C++接口
附录C一个依赖提取器包/分析器包
附录D快速参考
同类热门
类似软件
TCP/IP Builder(tcp/udp测试工具)1.04M384人在用TCP/IP Builder是一款操作方便、功能强大的Windows Socket测试软件,作为一款tcp/udp测试工具,它允许你手动设置指定的套接字连接(或监听连接)并通过它发送和接收数据,支持设置本地IP和端口、TCP / UDP协议、DNS解析器
查看CorelDRAW 12 绿色简体中文版727.3M37613人在用CorelDRAW 12是一套屡获殊荣的图形图像编辑软件,能精确捕捉你的创作神髓。CorelDRAW 12套装含两个绘图应用程序:一个用于矢量图及页面设计,一个用于图像编辑。这套惊人的绘图软件带给你强大的交互工具,可创作出多种富于动感的特殊效果及点阵图像
查看autocad2009 64位破解版100.84M6163人在用cad2009 64位是Autodesk公司针对64位的windows操作系统而开发一款大型计算机绘图软件,全名称也叫autocad2009 64位,新版本重新设计过用户界面,根据用户提供的一些反馈进行界面的设计,使得用户界面更加满足用户的需求。软件能够
查看热门标签
网友评论0人参与,0条评论
最新排行
11g329-1/2/3图集12.01Mpdf高清完整版 11g329图集全套是一个包含了11g329-1、11g329-2和11g329-3的国家建筑标准设计图集,也是建筑物抗震构造详图的pdf高清完整版,由中国建筑标准设计研究院编制,中华人民共和国住房和城乡建设部发行,可以适用于多层和高层钢筋混凝土房
查看node.js资料合集包25.9Mpdf高清版node.js资料合集包是多多小编从网上收集的一批node.js学习资料,总共6个pdf高清版文档,包括node.js开发指南、Node+Web开发、NODE.js入门手册、Node入门、深入浅出Node.js和Node,+Up+and+Running。
查看linux从入门到精通第2版104.07M刘忆智pdf扫描版 linux从入门到精通第2版是一本备受推崇的linux精品畅销书,由刘忆智等人共同编著,全书拥有内容丰富、讲解细腻、通俗易懂和实用性强等特色,以最新的Ubuntu 12.04为写作背景,详细的介绍了linux的基础应用、系统管理、网络应用、娱乐和办
查看iPhone游戏开发实践指南36.52M戴利pdf扫描版 iPhone游戏开发实践指南是一本iphone游戏开发实践手册,由美国iphone开发程序员戴利编著。本书是新手的完美入门手册。作者将带领你走过开发iPhone热门二维游戏的每个细节。在本书中,你将学习如何构建二维贴图地图游戏Sir Lamorak
查看计算机通信与网络(第2版)57.16M杨庚pdf扫描版计算机通信与网络(第2版)是一本计算机网络教材,由杨庚编著。本书是作者结合多年教学及科研工作的经验编写而成的,在介绍基础知识的基础上,又介绍了计算机网络与通信技术的发展概况,内容由浅入深,理论与实践相结合,面向应用,能够帮助读者很快的学习掌握计算机网络技
查看javascript权威指南第6版中文版36.07Mpdf高清版javascript权威指南是一本关于如何学习javascript语言的圣经,它详细的介绍了javascript语言的词法结构、类型、值和变量、表达式、运算符、语句、对象、数组、函数、类和模块等等内容,能够帮助用户更好的学习和掌握javascript,适
查看SQL学习指南第2版18.98M高清扫描版SQL学习指南第2版是一本mysql数据库学习指南,由美国程序员博利厄(Alan Beaulieu)编著。本书内容更新至新版本的数据库管理系统,包括mysql6.0、oracle 11g和ms sql server2008。无论你需要编写数据库应用程序还
查看分布式系统原理与范型 第二版53.75M特尼博姆 pdf扫描版 分布式系统原理与范型 第二版是由美国著名作者特尼博姆Tanenbaum编著的一本关于分布式系统的力作,由辛春生、陈宗斌等编译。本书相对上一版进行了重大修订。我们添加了单独的一章,以反映分布式系统组织结构所取得的进展。另一个重大的修改是,本版介绍了更
查看