【发布时间】:2009-03-06 18:22:04
【问题描述】:
我是新手,正在努力学习。
- 什么是分析?
- 用于分析 .NET、Java EE 的各种免费工具有哪些?
- 可以分析 Javascript 吗?
- 如果是这样,通过什么工具?
- 最后,这些分析器是如何工作的?
【问题讨论】:
标签: profiling
我是新手,正在努力学习。
【问题讨论】:
标签: profiling
分析测量代码的各个部分运行所需的时间。可以使用 firebug 分析 Javascript:http://getfirebug.com/js.html
【讨论】:
profiling 正在测量执行时间并将其与各种类/方法/函数相关联。 (有关分析器如何工作的一些评论,请参阅我提供给维基百科页面的链接)
【讨论】:
将分析器视为执行持续时间错误的调试器。
Profiler 的实现方式也很像调试器,只是它们不允许您停止程序并四处寻找,它们只是让它运行并跟踪在程序的每个部分花费了多少时间。如果您有一些运行速度比您需要的慢的代码,这将特别有用,因为您可以准确地找出所有时间的去向,并集中精力解决该瓶颈。
许多开发人员认为您应该永远在不使用分析器的情况下手动优化代码。
【讨论】:
您通常使用分析器的方式如下:
【讨论】:
这里有一些 .NET 分析器供您试用(免费):
我不是这些的忠实粉丝。我会推荐一种商业产品以获得最佳效果:
除此之外,请查看 Brad Adams 的博文 Profilers for the CLR 和 .NET Application Profiler。
我个人喜欢dotTrace。
【讨论】:
分析是一种测量执行时间和过程调用次数的技术。
然而,它不是唯一甚至不一定是最好的方法来定位导致代码浪费时间的事物。 Look here.
对于不同的维基百科文章,请尝试http://en.wikipedia.org/wiki/Performance_tuning#Bottlenecks
如需简单的操作方法,请尝试http://www.wikihow.com/Optimize-Your-Program%27s-Performance
【讨论】:
维基百科说:
在软件工程中,性能分析(现在更常称为分析)是使用在程序执行时收集的信息来调查程序的行为
在此处继续阅读 http://en.wikipedia.org/wiki/Performance_analysis。
所以,关于 javascript 工具 Firebug(http://getfirebug.com/index.html#install) 是一个很好的选择。
【讨论】:
性能分析是在方法级别(功能统计)以及运行时级别信息收集的度量,例如内存消耗、处理器、线程和在一段时间内加载的类数(非功能统计)应用程序运行的时间。它属于由一位用户运行的相关应用程序的性能分析(功能性和非功能性统计信息收集)。 JConsole 是用于分析 Java 应用程序的内置工具之一。
【讨论】:
分析或编程配置文件是对程序进行动态分析的技术,它使用诸如内存空间或程序的时间复杂性、特定指令的使用或频率以及函数调用的持续时间等资源,以举几个案例。通常,分析信息用于帮助程序优化,更具体地说,用于性能工程。分析是通过检测程序的源代码来完成的。探查器采用不同的方法,例如基于事件的、统计的、仪器化的和模拟方法
【讨论】: