微软开发成功之路.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微软开发成功之路

微软开发者成功之路 (之一) 概 要 目标:编写高质量的代码 ----正确对待Bug ----游戏规则 ----编程技巧 ----资源和工具 听众对象 ----软件管理和开发人员 设计稳定可靠的产品级代码 正确对待Bug 什么是Bug? Bug:影响客户正常使用产品的任何问题 ----钢中的杂质 注意: ----客户是上帝 ----因您的产品让上帝心情不好,您就。。。 ----客户的功能规范会产生Bug ----产品中没有明确功能规范的部分会产生bug 为什么关注Bug? Bug的危害 ----降低产品质量 ----让您无法预计和控制产品发布日期 ----损害团队的积极性 ----损害未来的产品 开发的效率图 Bug的来源 项目期限的压力 产品的复杂度 沟通不良 开发人员的疲劳、压力或受到干扰 缺乏足够的知识、技能和经验 不了解客户的需求 缺乏动力 Bug是正常的—再好的钢也不是100%纯 怎样减少Bug? 开发中为质量工作留足时间 越简单越好 改善沟通(团队内部、团队与客户) 重视和避免开发人员的疲劳、压力或受到干扰 增加知识、技能和经验 了解您的客户 把项目质量与个人利益挂钩 树立正确的bug观 设计稳定可靠的产品级代码 游戏规则 游戏规则—本章概要 在程序设计上倾注心血 照顾到代码的方方面面 在您的产品或功能“完成”之前发现和解决bug 设计稳定可靠的产品级代码:面临的挑战 确保钢炼完之前自己不要掉到高炉里 设计:需要完整的功能规范 功能规范 ----从客户的角度描述问题 ----不需要描述实现方法 审阅功能规范 ----以客户情景来理解用户的视角 ----发现并解决问题 ----越具体越好 ----写出初步的功能设计文档 功能设计文档 强迫你在动手编程之前找出并解决难题 --避免编程中的不确定因素 --避免编程中忘记重要的客户要求 --避免做无用工 --加快编程速度 帮助你制作进度表 帮助其他开发人员为你提供建议和参考 为你的代码提供注释 功能设计文档? 描述数据结构和接口 发现并解决难题 了解所有不需要做的事 使用检查清单或者设计文档模板 简单的做法:列出你所知道的和不知道的 正式的做法:使用MSDN Universal版中的UML工具 设计:拿来主义 首先考虑借用现成代码 --“拿来主义”是提高工作效率的最有效办法 * 节省时间 * 提高质量 --拿来主义的方式 * 可执行文件(DLLS,libraries) * 源程序代码 * 算法 * 架构 * 用户界面 拿来主义(继续) 哪里有可以借用的代码? --你当前或以前开发的项目中 --系统调用 --标准的代码库(CRT,STL) --其他项目 可能带来的问题 --需要时间来集成 --拿来的代码质量低下 --拿来的代码不完全符合需要 --给开发带来不确定因素 设计:编写开发者测试计划 在编程开始之前编写测试计划 --编程时会考虑到测试的要求 --铁面无私:测试要求不随编程而改变 --可以避免敷衍测试的行为 测试计划需要考虑: --用户情景 --输入和输出 --边界情况 --可能出现的错误 --功能之间的集成和连接 照顾到代码的方方面面 好的代码是简洁、可读和一丝不苟的 建议双程序员合作制度 编程中进行不断的测试 使用编程技巧 使用工具 好代码:简洁 设计清晰、无误解的接口和对象 使用简单的算法和流程 --避免模糊、隐藏、难懂、好玩和偷懒 --把过长和身兼多职的函数细分为多个 不要为改善性能而盲目地改动程序 --先做性能测试(benchmark and profile) --对症下药;只修改会影响性能的部分 避免编写不必要的代码 好代码:可读 让注释有用并容易维持 使用统一的编程标准 ---有助于改善程序员之间的沟通 ---定义编程标准文档 * 包含命名、格式,以及需要遵守和避免的原则 * 采用标准比标准如何定义更重要 好代码:一丝不苟 处理所有出错状况 检查所有返回值 严整所有外部参数 吃透你要实现的函数调用 --你的假设是什么?正确吗? --杜绝“走一步看一步” --尽可能多了解你的功能和项目 * 客户和功能规范 * 架构和代码设计 * 开发环境(团队,规范,软硬件) 好代码:双程序员合作制度 一个和尚挑水吃,两个和尚抬水吃 --集中精力,提高质量 --互相验证对方的假设 --弥补对方考虑的盲点 --提供Code Review(代码审阅) --对现有代码特别有效 好代码:编程过程中的测试 在测试环境下走过所有新代码 --在每个代码块中设断点 --到达断点并验证代码块后,清除改断点 立即对每个功能的可测试部分做测试 设计和实现中都要考虑可测试性

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档