代码质量(注释版)

代码质量(注释版)
作 者: Diomids Spinellis 康华 齐永升
出版社: 机械工业出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 程序设计
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Diomidis spinellis广受赞誉的《Code Reding》的作者。从1985年起,他就从事创新型软件开发,和数百分行代码打交道,并一直发展本书中介绍的各项技术。他在伦敦帝国学院取得了软件工程硕士工程学位和计算机科学博士学位。目前,他是雅典经济与商业大学科学技术管理系列教授。

内容简介

本书重点讨论代码的非功能特性,深入讲述代码如何满足重要的非功能性需求,如可靠性、安全性、可移植性和可维护性,以及时间效率和空间效率。 本书从Apache Web应用服务器、BSD UNIX操作系统和HSQLDB Java数据库等开源项目中攫取数百个小例子,并以实例为基准点,辅以理论分析,从实用的角度讲述每个专业软件开发人员能立即运用的概念和技术。 本书适合作为软件开发人员、安全工程师及软件测试工程师等参考。

图书目录

序言

前言

1 Introduction

1.1 Software Quality

1.2 How to Read This Book

2 Reliability

2.1 Input Problems

2.2 Output Problems

2.3 Logic Problems

2.4 Computation Problems

2.5 Concurrency and Timing Problems

2.6 Interface Problems

2.7 Data-Handling Problems

2.8 Fault Tolerance

3 Security

 3.1 Vulnerable Code

3.2 The Buffer Overflow

3.3 Race Conditions

3.4 Problematic APIs

3.5 Untrusted Input

3.6 Result Verification

3.7 Data and Privilege Leakage

3.8 Trojan Horse

3.9 Tools

4 Time Performance

4.1 Measurement Techniques

4.2 Algorithm Complexity

4.3 Stand-Alone Code

4.4 Interacting with the Operating System

4.5 Interacting with Peripherals

4.6 Involuntary Interactions

4.7 Caching

5 Space Performance

5.1 Data

5.2 Memory Organization

5.3 Memory Hierarchies

5.4 The Process/Operating System Interface

5.5 Heap Memory Management

5.6 Stack Memory Management

5.7 Code

6 Portability

6.1 Operating Systems

6.2 Hardware and Processor Architectures

6.3 Compilers and Language Extensions

6.4 Graphical User Interfaces

6.5 Internationalization and Localization

7 Maintainability

7.1 Measuring Maintainability

7.2 Analyzability

7.3 Changeability

7.4 Stability

7.5 Testability

7.6 Effects of the Development Environment

8 Floating-Point Arithmetic

8.1 Floating-Point Representation

8.2 Rounding

8.3 Overflow

8.4 Underflow

8.5 Cancellation

8.6 Absorption

8.7 Invalid Operations

A Source Code Credits

 Bibliography

 Index

 Author Index

注释