如何快速使我的代码

任何人都可以指点我一个很好的教程,帮助我快速轻松地编写代码。 我有兴趣知道哪种方法更快,何时使用方法而不是其他…
以及如何评估代码是好还是坏?
我的编程语言是C#。

大家好,
感谢您的回复,他们非常有帮助。
我正在编辑我的问题,特别是优化是无限的。
我想知道每种情况下最好的方法是什么。
例如,如果我将字符串附加到字符串,使用StringBuilder优于字符串…我只需要这些简单的东西。

注意子优化。

即使一个特定的function比另一个更快,但这并不一定会对应用程序的运行时产生任何影响。 您需要了解代码中哪些部分确实存在潜在问题,并专注于优化这些部分。 请注意函数的O表示法以及它们被调用的频率。 要识别需要优化的零件,分析器可以提供很好的帮助。

这个问题有一些有趣的观点,说明为什么在实际需要之前不应进行优化。

当然。 这是我们做的:

  • 通过决定旅程结束的时间开始旅程。 设定有意义,以客户为中心,切合实际的绩效目标。 (速度和资源消耗都有。)

  • 经常仔细测试您的代码,看看您是否达到了性能目标。

  • 如果您达到了性能目标,请不要担心性能问题。 事情很好。 担心错误,健壮性或function。

  • 如果您未达到性能目标,请运行探查器。 用它来识别最严重的违规代码。 修复最差的代码才有意义; 制作已经非常快速且亮度稍快且更轻的东西并不能解决您的性能问题。

  • 重写慢速代码,使其性能更高。 (这是很难的。)确保你测试它以确保它真的更好。

  • 如果尽管你尽了最大的努力,你就无法做到足够好,要么重新评估你的目标,要么取消项目,把时间花在你可以成功的事情上。

继续迭代,直到你发货。

类型真快。

首先基本实现,然后测试优化的位置。

如果您使用的是Visual Studio Profissional,则可以使用Analyze – > Launch Performance Wizard来分析方法性能。 我不确定其他版本是否支持此function,但是,还有一些商业/免费应用程序…寻找分析器(请参阅此处获取列表)。

您应该查看c#的隐藏function ,这篇文章介绍了c#开发中的最佳实践

你可以得到很多关于此的建议。 但请注意: 过早优化是万恶之源。

首先是为了正确性 ,下一步是为了清晰 ,然后是性能

俗话说,

“没有人关心你能多快计算出错误的答案”

(虽然在实际水平上,使用剖析器)

如果一种方法总是比另一种方法更快,那么它们就不会包括较慢的方法。

性能方面唯一不变的是你需要分析。 一切都从那开始。

如果你自己一个探查器,它会帮助你,有些甚至会给你很好的建议。

示例: ANTS Profiler

通常,您会发现减少创建字符串的次数是您可以获得的主要性能提升。

那并且不要手动搞乱垃圾收集器(除非你真的知道你在做什么)

Java设计模式的这个链接过于复杂,不要因为Java这个词过于推迟,你可以使用他们用任何语言进行开发的教学。

问题是,如果你想知道何时做什么以及使用什么方法等等,设计模式就是你所说的。

我希望有人在我的职业生涯早期向我指出这一点。

就一般建议而言:

  • 尽量使用最少的循环
  • 尽可能将代码移出循环
  • 避免在循环中复制事物(如字符串)
  • 避免在循环中创建对象
  • 在需要保证的情况下缓存(通常是需要花费大量时间的小对象),但请确保您的缓存具有良好的处置策略,否则会变成内存泄漏

您可以在纯模式下编译程序以提高运行时性能。

自己解决这个问题的方法之一是使用一个控制台应用程序,在这个应用程序中,您可以尝试相互运行离散的代码并对它们进行计时。 喜欢这里