×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787576605532
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:24cm
  • 页数:15,415页
  • 出版时间:2023-03-01
  • 条形码:9787576605532 ; 978-7-5766-0553-2

内容简介

好的软件设计对于项目成功至关重要,但设计软件并非易事。你需要对设计决策的结果有深刻的理解,并很好地了解可用的设计方案。通过本书,有经验的C 开发人员将对实用这种现代语言的软件设计有一个透彻的、实用的、前所未有的理解。
C 培训师和顾问Klaus Iglberger解释了如何管理依赖性和抽象,提高软件实体的可变性和可扩展性,以及应用和实现现代设计模式来帮助你利用现今的一切可能性。软件设计是软件项目重要的一环,因为它影响到软件重要的属性:可维护性、可变性和可扩展性。

目录

Preface 1. The Art of Software Design Guideline 1: Understand the Importance of Software Design Features Are Not Software Design Software Design: The Art of Managing Dependencies and Abstractions The Three Levels of Software Development The Focus on Features The Focus on Software Design and Design Principles Guideline 2: Design for Change Separation of Concerns An Example of Artificial Coupling Logical Versus Physical Coupling Don't Repeat Yourself Avoid Premature Separation of Concerns Guideline 3: Separate Interfaces to Avoid Artificial Coupling Segregate Interfaces to Separate Concerns Minimizing Requirements of Template Arguments Guideline 4: Design for Testability How to Test a Private Member Function The True Solution: Separate Concerns Guideline 5: Design for Extension The Open-Closed Principle Compile-Time Extensibility Avoid Premature Design for Extension 2. The Art of Building Abstractions Guideline 6: Adhere to the Expected Behavior of Abstractions An Example of Violating Expectations The Liskov Substitution Principle Criticism of the Liskov Substitution Principle The Need for Good and Meaningful Abstractions Guideline 7: Understand the Similarities Between Base Classes and Concepts Guideline 8: Understand the Semantic Requirements of Overload Sets The Power of Free Functions: A Compile-Time Abstraction Mechanism The Problem of Free Functions: Expectations on the Behavior Guideline 9: Pay Attention to the Ownership of Abstractions The Dependency Inversion Principle Dependency Inversion in a Plug-In Architecture Dependency Inversion via Templates Dependency Inversion via Overload Sets Dependency Inversion Principle Versus Single-Responsibility Principle Guideline 10: Consider Creating an Architectural Document 3. The Purpose of Design Patterns Guideline 11: Understand the Purpose of Design Patterns A Design Pattern Has a Name A Design Pattern Carries an Intent A Design Pattern Introduces an Abstraction A Design Pattern Has Been Proven Guideline 12: Beware of Design Pattern Misconceptions Design Patterns Are Not a Goal Design Patterns Are Not About Implementation Details
展开全部

作者简介

[德]克劳斯·伊格尔伯格(Klaus Lglberger) is a freelancing C++ trainer and consultant. He shares his expertise of 15+ years of C++ in popular training courses around the world and is a frequent speaker at C++ conferences. Since his PhD in 2010 he has focused on large-scale software design and on how to improve the maintainability of software. His major interest is how to design for change and extensibility and how to apply design patterns to simplify the task.

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航