移山亦可有道 ——读《移山之道》

本书通过虚拟项目开发全过程,生动阐述了软件工程中的团队管理与技术实践,包括代码复审、结对编程、团队发展阶段及领导策略,以及敏捷开发中的计划调整与项目后评估的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微软高级开发经理邹欣老师著的赫赫有名的《移山之道》读完了,读之前就在想,如果只看目录,我会产生怎样的疑惑或者我最想了解到的是什么呢?时至今日,书本读完了,那就挑选几个自己感兴趣的话题,以Q&A的形式,与大家分享吧。

1. Q:如何看待代码复审与结对编程?

   A:代码复审,即审察代码是否在规范之内正确解决问题。它主要目的在于找出代码的逻辑和算法等的错误或劣势,使代码得以改进,并起到相互学习促进的作用。代码复审也能使开发人员更加的了解项目的开发策略和流程等;结对编程由可以互换的驾驶员和领航员两个角色平等互补的进行开发,结对编程能随时进行复审与交流学习,同时能带来更多工作的信心和监督。

代码复审与结对编程还是有很大的不同之处:代码复审时,尽管每个人都会提出意见但是不是每个人都与那段代码打交道,也不一定复审者对代码感兴趣,出发点是消极的,但是,结对编程没有“你的代码”、“他的代码”这样的界限了,两个人与同一段代码打交道,更能提出好的意见和建议。此外,代码复审一般都是代码快可以提交了才进行,结对编程能一边写代码一边复审,修改代码的代价将要小于前者。但是,结对编程相对来说花费的人力较多。

2. Q:一个团队会经历怎么样的几个阶段,如何在各阶段领导一个团队?

A:总结了《移山之道》与网络搜索,粗略结论如下:

1) 萌芽(forming)阶段:

成员对工作和人际关系:高度焦虑状态

成员的情绪特点:激动、希望、怀疑、焦急、怀疑

在心理上:极不稳定状态

作为leader,应该明确团队方向、目标和任务,分配好角色和各自的职责,并将任务分解成易操作的短期目标。此时,领导者应有快刀斩乱麻的指导型风范。

2) 磨合(storming)阶段:

成员对工作和人际关系:剧烈动荡状态

成员的情绪特点:紧张、挫折、不满、对立、抵制

此时,领导者应有影响力,积极应付和解决出现的各种问题和矛盾;引导成员对自己的角色及职责进行调整;邀请团队成员积极参与解决问题和作出决定

3) 规范(norming)阶段:

成员对工作:积极、努力

人际关系:已确立,大部分矛盾已解决

成员的情绪特点:信任、合作、忠诚、友谊、满意

这一阶段,领导者主要扮演促成者和鼓励者的角色,协调成员之间的矛盾和竞争关系建立流畅的合作模式,积极放权使成员自我管理和激励。

4) 创造(performing)阶段:

成员对工作:积极、努力;团队效率叨叨颠峰状态。

人际关系:融洽

成员的情绪特点:开放、坦诚、依赖、集体荣誉感强

领导者的主要任务就是要建立团队业绩和个人绩效的考评机制,最大限度的调动成员的积极性。同时要意识到危险所在,防止好的团队因骄傲自满而衰败。

3. Q:怎么样对待项目开发过程中发现的项目计划的不足之处?

      在敏捷开发模式中,在项目计划阶段,首先必须要明确,好的计划和设计是一切的开始。当我们在开发过程中,发现之前的计划并不合理时,怎么办?笔者翻阅了一下书籍和网页,似乎,大家都默认在计划阶段工作已经成熟了,在实施阶段就按照计划推进。

但是,一旦计划出现失误,是不是就意味着项目将面临很大的失败的风险?是不是意味着,如果时间来得及,重新计划是最佳的选择呢?我个人觉得,如果计划出现重大的失误,如果时间来不及了,宁愿宣告失败就不必浪费下一步的时间了,如果只是有些瑕疵,则可以考虑将变更的部分放到开发流程的下一个迭代过程中。

      此处,求达人高见!

4. Q:软件都已经发布了,事后诸葛亮会议是否多此一举?

A:这个问题我的看法是,如果成功了,自然需要举杯相庆,要是失败了更是需要来这么一个事后诸葛亮的会议。

首先,如果成功了,每个人都有一份功劳一份收获,大家团队协作这么久,自然有很多的酸甜苦辣想与所有成员一起分享,也能从中总结出一些成功的经验,学习到别人闪光的地方,并有助于以后的提高与改善。话说,成功是踏着失败的尸体爬上山的顶峰的。失败了,事后诸葛亮会议就是在“码尸体”为成功铺路。总结教训,有过改之。

再说了,不管怎么样,是非成败转头空,经过这么久的奋斗与努力,付出这么多,聚在一起,吃喝谈笑一场总也不为过分吧。

5. Q:看完《移山之道》,有何感想或者评价?

A:以下是一个非软件专业的门外汉的心声:

说实话,刚刚学习《高级软件工程》这门课的时候,心里不少的焦虑,代码,开发软件。。。那是多么枯燥的主啊。一想起要看完一本教材,心里更是不爽。最后发现,我错了。

《移山之道》全书从软件开发的角度出发,虚拟王屋村移山软件开发公司stone项目开发的全过程,通过故事的情节,将技术与实战衔接,并且贯穿起了项目构想,项目计划,开发过程,测试以及版本发布等整个团队流程。这本书,行文十分的生动风趣,不乏各种“冷笑话”,看起来轻松而又愉快,并没有我想象中的枯燥,反而是以集成了多元文化的幽默风趣形式阐述技术的内涵以及团队管理运作之道,值得一读。作为入门级别的选手,更是推荐一看,相信我,你不会失望的。

 

最后,移山,并不需“子子孙孙无穷尽也”,移山亦可有道!

Dongliang He

转载于:https://www.cnblogs.com/OMG-Team/archive/2011/10/09/2204672.html

资源下载链接为: https://pan.quark.cn/s/abbae039bf2a 无锡平芯微半导体科技有限公司生产的A1SHB三极管(全称PW2301A)是一款P沟增强型MOSFET,具备低内阻、高重复雪崩耐受能力以及高效电源切换设计等优势。其技术规格如下:最大漏源电压(VDS)为-20V,最大连续漏极电流(ID)为-3A,可在此条件下稳定工作;栅源电压(VGS)最大值为±12V,能承受正反向电压;脉冲漏极电流(IDM)可达-10A,适合处理短暂高电流脉冲;最大功率耗散(PD)为1W,可防止器件过热。A1SHB采用3引脚SOT23-3封装,小型化设计利于空间受限的应用场景。热特性方面,结到环境的热阻(RθJA)为125℃/W,即每增加1W功率损耗,结温上升125℃,提示设计电路时需考虑散热。 A1SHB的电气性能出色,开关特性优异。开关测试电路及波形图(图1、图2)展示了不同条件下的开关性能,包括开关上升时间(tr)、下降时间(tf)、开启时间(ton)和关闭时间(toff),这些参数对评估MOSFET在高频开关应用中的效率至关重要。图4呈现了漏极电流(ID)与漏源电压(VDS)的关系,图5描绘了输出特性曲线,反映不同栅源电压下漏极电流的变化。图6至图10进一步揭示性能特征:转移特性(图7)显示栅极电压(Vgs)对漏极电流的影响;漏源开态电阻(RDS(ON))随Vgs变化的曲线(图8、图9)展现不同控制电压下的阻抗;图10可能涉及电容特性,对开关操作的响应速度和稳定性有重要影响。 A1SHB三极管(PW2301A)是高性能P沟MOSFET,适用于低内阻、高效率电源切换及其他多种应用。用户在设计电路时,需充分考虑其电气参数、封装尺寸及热管理,以确保器件的可靠性和长期稳定性。无锡平芯微半导体科技有限公司提供的技术支持和代理商服务,可为用户在产品选型和应用过程中提供有
资源下载链接为: https://pan.quark.cn/s/9648a1f24758 在 JavaScript 中实现点击展开与隐藏效果是一种非常实用的交互设计,它能够有效提升用户界面的动态性和用户体验。本文将详细阐述如何通过 JavaScript 实现这种功能,并提供一个完整的代码示例。为了实现这一功能,我们需要掌握基础的 HTML 和 CSS 知识,以便构建基本的页面结构和样式。 在这个示例中,我们有一个按钮和一个提示框(prompt)。默认情况下,提示框是隐藏的。当用户点击按钮时,提示框会显示出来;再次点击按钮时,提示框则会隐藏。以下是 HTML 部分的代码: 接下来是 CSS 部分。我们通过设置提示框的 display 属性为 none 来实现默认隐藏的效果: 最后,我们使用 JavaScript 来处理点击事件。我们利用事件监听机制,监听按钮的点击事件,并通过动态改变提示框的 display 属性来实现展开和隐藏的效果。以下是 JavaScript 部分的代码: 为了进一步增强用户体验,我们还添加了一个关闭按钮(closePrompt),用户可以通过点击该按钮来关闭提示框。以下是关闭按钮的 JavaScript 实现: 通过以上代码,我们就完成了点击展开隐藏效果的实现。这个简单的交互可以通过添加 CSS 动画效果(如渐显渐隐等)来进一步提升用户体验。此外,这个基本原理还可以扩展到其他类似的交互场景,例如折叠面板、下拉菜单等。 总结来说,JavaScript 实现点击展开隐藏效果主要涉及 HTML 元素的布局、CSS 的样式控制以及 JavaScript 的事件处理。通过监听点击事件并动态改变元素的样式,可以实现丰富的交互功能。在实际开发中,可以结合现代前端框架(如 React 或 Vue 等),将这些交互封装成组件,从而提高代码的复用性和维护性。
一、AutoCAD 2016的工作界面 组成要素:由应用程序菜单、标题栏、快速访问工具栏、菜单栏、功能区、命令窗口、绘图窗口和状态栏组成。 1. 切换至AutoCAD 2016 1)工作空间 模式类型:提供草图与注释、三维基础、三维建模三种工作空间模式 二维绘图功能:在草图与注释空间中可使用默认、插入、注释、参数化、视图管理等选项卡进行二维图形绘制 切换方法: 快速访问工具栏→工作空间按钮下拉列表 状态栏→切换工作空间按钮下拉列表 三维功能:三维基础空间包含可视化、坐标、长方体等三维建模工具 2)应用程序菜单 位置:位于界面左上角 核心功能: 搜索命令 文件操作(新建/打开/保存/另存为/输出/发布/打印/关闭) 最近文档管理(可按日期/大小/类型排序) 选项设置(打开选项对话框) 3)标题栏 显示内容:当前程序名称(Autodesk AutoCAD 2016)和文件名称 信息中心功能: 帮助搜索 Autodesk账户登录 软件更新检查 窗口控制(最小化/最大化/关闭) 4)菜单栏 显示设置:通过自定义快速访问工具栏→显示菜单栏选项启用 菜单结构:包含文件、编辑、视图、插入等11个主菜单项 命令示例: 绘图→直线:进入直线绘制模式 绘图→圆弧:提供三点、起点-圆心-端点等11种绘制方式 5)选项卡和面板 组织结构: 选项卡(默认/插入/注释等) 面板(绘图/修改/注释等) 命令按钮(直线/多段线/圆等) 操作流程:单击命令按钮→绘图区操作→Enter键确认 6)工具栏 调用方式:工具→工具栏→AutoCAD→选择所需工具栏 控制方法: 显示:勾选对应工具栏选项 隐藏:取消勾选或点击工具栏关闭按钮 示例操作:绘图工具栏包含直线、构造线等绘图工具按钮 7)绘图窗口 主要功能:核心绘图工作区域 导航控制: 滚动条调整视图 模型/布局空间切换 显示
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值