![]()
内容推荐 本书深入介绍了从开发方法、生产力到面向对象的设计需求和系统文档的方方面面。通过本书,你将学习到:为什么遵循软件匠艺模型可以让你做到最好;如何利用可追溯性来加强文档的一致性;如何通过用例分析来创建自己的UML需求;如何利用IEEE文档标准开发出更好的软件。 通过对高质量软件开发中技能、态度和道德方面的深入讲解,本书揭示了如何将工程原理应用于编程的正确方法。在这个过程中,Hyde不仅会教给你规则,还会告诉你什么时候该打破规则。他不仅会启发你认识什么是最佳实践,同时还会让你发现适合自己的最佳实践。 本书中包含了大量的资源和示例,它是你编写代码的首选指南,将让你从同行中脱颖而出。 作者简介 兰德尔·海德,Randall Hyde是The Art of Assembly Language(《汇编语言的编程艺术》)和Write Great Code(《编程卓越之道》)第1~3卷(均由No Starch Press出版),以及Using 6502 Assembly Language和P-Source(由Datamost出版)的作者。他也是Microsoft Macro Assembler 6.0 Bible(由Waite Group出版)一书的合著者。在过去的40年里,Hyde一直从事嵌入式软件/硬件工程师的工作,为核反应堆、交通控制系统和其他电子设备开发相关指令集。他还在加州理工大学波莫纳分校和加州大学河滨分校教授计算机科学课程。 目录 第1部分 个人软件工程 1 软件开发的比喻 1.1 什么是软件 1.1.1 软件不是被制造出来的 1.1.2 软件不会磨损 1.1.3 大多数软件都是定制化的 1.1.4 软件可以很容易升级 1.1.5 软件不是一个独立的实体 1.2 与其他领域的相似性 1.2.1 程序员像艺术家一样 1.2.2 程序员像建筑师一样 1.2.3 程序员像工程师一样 1.2.4 程序员像工匠一样 1.2.5 究竟是艺术家、建筑师、工程师还是工匠 1.3 软件工程 1.3.1 一个正式的定义 1.3.2 项目规模 1.3.3 软件工程的问题 1.4 软件匠艺 1.4.1 教育 1.4.2 学徒阶段 1.4.3 软件熟练工 1.4.4 大师级工匠 1.4.5 软件匠艺的不足 1.5 通往卓越编程的道路 1.6 获取更多信息 2 生产力 2.1 什么是生产力 2.2 程序员生产力与团队生产力的比较 2.3 工时和实际时间 2.4 概念复杂性和范围复杂性 2.5 预测生产力 2.6 度量指标,以及我们为什么需要它们 2.6.1 可执行文件大小度量指标 2.6.2 机器指令度量指标 2.6.3 代码行数度量指标 2.6.4 语句数量度量指标 2.6.5 功能点分析 2.6.6 McCabe圈复杂度度量指标 2.6.7 其他度量指标 2.6.8 度量指标的问题 2.7 我们怎样才能每天写出10行代码 2.8 估计开发时间 2.8.1 估计小型项目的开发时间 2.8.2 估计中型项目和大型项目的开发时间 2.8.3 估计开发时间的问题 2.9 危机模式项目管理 2.10 如何提高工作效率 2.10.1 合理选择软件开发工具 2.10.2 管理开销 2.10.3 设置明确的目标和里程碑 2.10.4 练习自我激励 2.10.5 集中注意力,消除干扰 2.10.6 如果你觉得无聊,那么就做点别的事情 2.10.7 尽可能自立 …… 第2部分 UML 第3部分 文档 后记:如何设计卓越的代码 |