【问题标题】:Why do require to change code runtime?为什么需要更改代码运行时?
【发布时间】:2017-10-15 17:10:09
【问题描述】:

我发现许多语言都提供了一些更改代码运行时的方法。许多人询问有关如何在这种或那种语言运行时中更改代码的问题。这里我的意思是更改代码是在运行时通过使用反射或其他方式重写代码本身。

我在 Java 应用程序开发方面拥有大约 6 年的经验。我再也不会遇到任何需要更改代码的问题了。

谁能解释为什么我们需要在运行时更改代码?

【问题讨论】:

  • 你以前从未使用过策略模式吗?
  • 此外,我不明白这与函数式编程有什么关系。函数式编程不是在运行时更改代码。
  • 这里我的意思是更改代码是在运行时使用反射或其他方式重写代码。
  • plug-ins 呢??

标签: functional-programming runtime programming-languages


【解决方案1】:

我体验了在运行时更改代码的三大好处:

  1. 在不关闭应用程序服务器的情况下修复生产环境中的错误。这使我们能够在不中断整个系统的情况下修复应用程序的某些部分的错误。

  2. 无需部署新版本的应用程序即可更改业务规则。更快地部署功能。

  3. 编写单元测试更容易。例如,您可以模拟依赖项,向某些对象添加一些所需的行为等等。Spock Framework 做得很好。

当然,我们有这样的好处,因为我们有一个非常明确的开发流程来处理这种情况。

【讨论】:

    【解决方案2】:

    有时您可能需要根据程序前面收到的输入调用方法。

    它可以用于基于键索引的动态计算值,其中每个键以不同的方式计算,或者计算需要从不同的来源获取所需的数据。您可以使用 methodName+indexOfTheKey 动态调用方法,而不是使用 switch 语句。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多