首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更快地解决应用程序性能问题?

如何更快地解决应用程序性能问题?
EN

Software Engineering用户
提问于 2015-10-09 15:59:06
回答 2查看 135关注 0票数 -1

虽然我订阅并通常在敏捷的工作场所工作,并且我认为有合理的标准,但我经常发现在“激烈的战斗”中性能问题很难解决,并且可能推迟或不像标准特性那样快速地开始工作。

尽管在一般性能知识的基础上积累了一段时间,但我还是想知道我能做些什么来更快地开始修复并找到与性能相关的解决方案。

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2015-10-09 16:39:12

在初始开发过程中,您的总体策略应该是足够好地理解算法和数据结构,以避免编写通过设计执行不好的代码。

例如,一个三层嵌套循环,每个级别上有100个迭代,可能看起来是良性的,但总共有100万次迭代,如果在这个内部循环中发生了任何花费大量时间的事情,那么就会出现性能问题。

  1. 明智地选择数据结构。如果您需要O(n log )查找,那么一个普通的链表就不会删除它。
  2. 总是先量。众所周知,软件开发人员不善于通过查看代码来判断代码的性能。
  3. 只有在性能显著提高时才能进行优化。这种情况发生的地方并不总是显而易见的。
  4. 只要有可能,稍后再进行优化。但是,不要不利用那些能够确保代码充分执行的早期设计决策。

进一步阅读

回到基础,Joel描述了"Schlemiel算法“。

票数 3
EN

Software Engineering用户

发布于 2015-10-09 18:55:07

别再做流氓了。你为自己创造了更多的工作,你实际上是在把你的工作置于危险之中。

不要在性能“问题”上工作,这些问题不是公认的问题。作为必然结果,业务将在您的正常工作过程中给您时间来解决公认的绩效问题。

  • 如果您认为应用程序或功能的当前性能不够,影响到其他系统,或者是硬件或托管成本过高的一个巨大因素,请将其记录为bug/请求,让涉众和产品所有者决定何时/是否应该在其上花费时间。
  • 如果在当前分配的任务/故事的范围内存在严重的性能问题,使其无法正常工作,那么在这一点上它不一定是“性能”问题;它是一个“特性还不能使用”的问题。使用“最佳实践”完成该特性所需做的事情。

除了这两个原因之外的任何事情都是课外活动。它需要在您的时间内完成,而且您应该非常确信您的优化不会引入任何bug。

但是,最好避免做公司没有明确批准的工作.以免你不得不解释你是如何“只是想学习一些东西”周五后,不小心失去了一堆客户数据或其他东西。

票数 2
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/299487

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档