欢迎光临澳大利亚新华书店网 [登录 | 免费注册]

    • 软件设计(从专业到卓越)/图灵原创
      • 作者:张刚|责编:王军花
      • 出版社:人民邮电
      • ISBN:9787115589750
      • 出版日期:2022/06/01
      • 页数:351
    • 售价:39.92
  • 内容大纲

        本书介绍了高效的软件设计和编程方法,把精益需求分析、领域驱动设计、面向对象编程、契约式设计、测试驱动开发、意图导向编程及演进式设计等编程实践融会贯通,深入洞察软件设计的本质,为软件工程师展示了一个清晰的“编程能力提升路线图”。
        本书适合各种编程语言的一线开发者、计算机和软件工程相关专业三年级及以上的本科生和研究生阅读,也适合专业的软件开发团队参考。
  • 作者介绍

        张刚,软件工程博士、资深技术专家、CCF软件工程委员会执行委员、贝尔实验室杰出工程师。先后任职于阿尔卡特朗讯、上海理工大学和阿里巴巴。20余年软件开发、架构设计和技术领导者的成功经验,先进软件工程方法与实践的持续探索者和积极传播者。
  • 目录

    品味篇  识别优秀设计
      第1章  优质代码的外部特征
        1.1  实现了期望的功能
        1.2  缺陷尽量少
        1.3  易于理解
        1.4  易于演进
        1.5  易于复用
        1.6  小结
      第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  小结
      第4章  领域建模
        4.1  领域模型的概念
        4.2  捕获业务概念
        4.3  辨析业务概念
        4.4  持续演进业务概念
        4.5  用领域模型指导软件开发
        4.6  小结
    专业篇  建立扎实功底
      第5章  设计分解和责任分配
        5.1  通过分而治之管理复杂性
        5.2  架构分解的原则与模式
        5.3  正确使用语言特性
        5.4  关注点分离
        5.5  设计模式
        5.6  小结
      第6章  依赖、接口和契约
        6.1  依赖的设计原则
        6.2  需求方接口
        6.3  提供方接口
        6.4  设计契约
        6.5  事件机制
        6.6  小结
    卓越篇  实现高效编码
      第7章  用测试描述需求和契约
        7.1  将测试作为一个建设性活动
        7.2  从V模型到I模型
        7.3  用测试澄清和文档化需求

        7.4  用测试澄清职责和契约
        7.5  测试先行
        7.6  小结
      第8章  用领域模型指导实现
        8.1  用领域模型指导实现
        8.2  基本构造块
        8.3  聚合、资源库和工厂
        8.4  分层架构和代码结构
        8.5  限界上下文
        8.6  上下文映射
        8.7  领域模型的持续演进
        8.8  小结
      第9章  由外而内的设计
        9.1  如何由外而内
        9.2  由外而内设计的优势
        9.3  应用测试替身
        9.4  测试先行和由外而内
        9.5  把由外而内应用于大规模的项目
        9.6  小结
    卓越篇  实现高效编码
      第10章  设计质量贯穿始终
        10.1  质量内建
        10.2  契约式设计和防御式编程
        10.3  高质量的自动化测试
        10.4  代码评审和结对编程
        10.5  代码质量度量和问题检测
        10.6  小结
      第11章  让设计持续演进
        11.1  软件设计的演进本质
        11.2  简单设计
        11.3  重构
        11.4  测试驱动开发
        11.5  持续集成
        11.6  小结
      第12章  精益思想和高效编程
        12.1  精益思想
        12.2  精益思想和软件设计的关系
        12.3  总结
    参考文献
    索引