大小:85.58M
更新时间:23-08-29
系统:Pc
大规模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快速参考
应用信息
同类热门
类似软件
EMC NetWorker8 管理员指南(中文)6.74M268人在用 EMC NetWorker8 管理员指南是专门针对EMC NetWorker8推出的一款可以快速上手EMC NetWorker8的教程手册,该手册内容按 “原样”提供,主要围绕EMC NetWorker概述、备份数据、存储节点和库、磁盘备份和云、备
查看
Dead Pixel Locator(显示器坏点测试软件)348K4083人在用 Dead Pixel Locator是一款免安装的LCD显示器坏点测试工具,通过显示纯色来协助肉眼查找显示器的坏点,内置白、黄、黑、绿等多种纯色测试方案,支持自设颜色调整,操纵简单,实用方便,可随身携带,有需求的朋友请下载。
查看
TCP/IP Builder(tcp/udp测试工具)1.5M545人在用 TCP/IP Builder是一款操作方便、功能强大的Windows Socket测试软件,作为一款tcp/udp测试工具,它允许你手动设置指定的套接字连接(或监听连接)并通过它发送和接收数据,支持设置本地IP和端口、TCP / UDP协议、DNS
查看
批量将TXT生成CHM文件工具879K350人在用 批量将TXT生成CHM文件工具是一款可批量将TXT文件生成一个CHM文件的免费绿色软件,简称为TXT转换CHM软件,其好处在于可以批量浏览,方便传播以及能够起到禁止使用者更改其中的内容。另外,批量将TXT生成CHM文件工具操作也十分方便,选择一个T
查看热门标签
网友评论0人参与,0条评论
最新排行
深入剖析Android开发:小应用里的大智慧pdf扫描版52.58Mpdf扫描版深入剖析Android开发:小应用里的大智慧是一本Android应用开发书籍,由张泳和葛丽娜两人共同编著。本书以谷歌的音乐播放器为例,深入剖析了Android的重要组件和核心服务,书中首先介绍了Android开发环境的搭建,以及AndroidSDK中一些
查看
oracle开发实战经典110.75M李兴华pdf扫描版 oracle开发实战经典是一本Oracle数据库实战手册,由李兴华编著。本书以Oracle 12c版本为基础(也适合Oracle 11g版本),对12c的新功能做了详细讲述。并且实例非常丰富,各类实例达1200个,达到实战水平只需一本书够了。同时本
查看
CCNA学习指南640-802第7版84.2Mpdf扫描版CCNA认证是思科认证过程的第一步,是当今所有思科认证的前提,但如何才能更好的入门呢?小编这里推荐大家阅读CCNA学习指南640-802第7版,这是国内首屈一指的CCNA应试宝典,由美国思科网络技术作家Todd Lammle编著。本书内容丰富翔实,全面系
查看
windows程序设计第7版中文版14.84M电子版 windows程序设计第7版中文版是专门为国内的Windows开发人员而提供的一个pdf电子版学习文件,同时由于这是国外一名作者进行编写分享的,因此原著是纯英文的,但为了更好的满足国人们的学习需求,所以小编带来的是经过专业团队进行翻译的一个简体中文
查看
linux shell编程从入门到精通44.95M张昊pdf扫描版 linux shell编程从入门到精通是linux Shell编程的入门书籍,由浅入深,循序渐进的讲解了linux Shell编程的基本知识,这些基本知识包括Shell编程的基础知识、文本处理的工具和方法、正则表达式、linux系统知识等。每一章节
查看
html5程序设计 第2版27Mpdf扫描版 html5程序设计 第2版是一本html5程序设计指南,由荷兰程序员Peter Lubbers编著,本书内容丰富翔实,主要讲解了html5的发展史、Canvas API、SVG、Geolocation API、 Communication API、
查看
循序渐进oracle数据库管理优化与备份恢复72.28M盖国强pdf扫描版 循序渐进oracle,全称叫做循序渐进oracle数据库管理优化与备份恢复,是一本Oracle数据库入门书籍,由Oracle数据库专家盖国强编著,全书内容丰富翔实,继续贯彻了作者“由浅入深、由点到线再及面”的学习方法,作者在写作过程中一直遵循了这个
查看
数据结构与算法分析c语言描述pdf高清版9.85M原书第二版 数据结构与算法分析c语言描述(原书第二版)是一本是国外数据结构与算法分析方在的标准教材,由美国佛罗里达国际大学计算机学院教授MarkAllenWeiss编著。本书介绍了数据结构(大量数据的组织方法)以及算法分析(算法运行时间的估算),讨论数据结构和
查看
google android开发入门与实战高清版35.85MPDF版 说到google android,它实际上是Google开发的基于Linux平台的开源手机操作系统,包括了操作系统、用户界面、用户程序、移动电话工作所需要的全部软件,并不存在任何以往阻碍移动产业创新的专有权障碍。 如果用户想要学会这一技
查看