gpt4 book ai didi

iphone - 为 iPhone 编写干净、高性能的代码

转载 作者:行者123 更新时间:2023-12-03 19:00:06 24 4
gpt4 key购买 nike

我使用 Objective-C 在 iPhone 上进行开发已经有几个月了,我一直在应用在使用 Java 开发应用程序时学到和完善的最佳实践。其中包括:设计具有单一职责的类、在适当的情况下应用设计模式以及编写 short methods只做一件事。对我来说,这些做法都受益于 clean-code观点,并且很大程度上与领域无关。

我对结果非常满意。然而,一些 iPhone 开发人员独立地建议我不要这样做,因为他们说我编写了太多的类和太多的方法。我多次被警告:

  • 堆栈将会崩溃
  • 太多的类会降低 iPhone 的速度(即用户可以察觉到)
  • 嵌套方法调用会损害性能(即用户可察觉)

实际上我没有遇到过这些问题。粗略地看一些iPhone performance metrics在我看来,实现通用模式和短方法所需的额外方法调用和对象生命周期开销不太可能造成任何用户可感知的延迟。然而,其他 iPhone 开发者的建议让我有点害怕。

我想继续学习和完善过去对我很有帮助的领域无关编程实践,但在 iPhone 上进行开发时,我不希望走上一条以痛苦告终的道路!

因此,对于这个平台 - 我是否应该放弃一些常见的最佳实践,而更加有意识地优化方法调用和对象生命周期开销?或者我应该继续关注Knuth's建议:

Premature optimization is the root of all evil (or at least most of it) in programming

最佳答案

对我来说,这确实取决于可维护性。有了高质量的代码,您可以更轻松地维护系统。

我有一些与我一起工作的开发人员,当我建议他们走捷径以使系统正常运行时,他们蔑视我并延迟交付项目。从长远来看,每次都是有返回的!!!

如果它是一个密集型应用程序,使用 opebGL 以及其他什么,那么性能可能会成为一个问题。如果它只是一个简单的实用程序或数据应用程序。我建议继续使用您所知道的最佳代码实践,然后继续学习它们,因为它们非常宝贵。大多数模式与领域无关,并且对所有基础编程语言都有好处。

如果你确实破坏了堆栈,那么将其中一些方法/类重构为单个调用(至少你知道它可能会发生,并且一旦发生就会注意到它),如果没有,那么你就有了很棒的代码以保持任何半生不熟的代码猴子都可以轻松阅读它,他们必须稍后查看它。

关于iphone - 为 iPhone 编写干净、高性能的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/909536/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com