Functional programming 为什么需要更改代码运行时?

Functional programming 为什么需要更改代码运行时?,functional-programming,runtime,programming-languages,Functional Programming,Runtime,Programming Languages,我发现许多语言提供了一些改变代码运行时的方法。许多人询问如何在这种或那种语言运行时更改代码。这里我所说的更改代码是指在运行时通过使用反射或其他方式重写代码本身 我有大约6年的Java应用程序开发经验。我再也不会遇到任何需要随时更改代码的问题 有人能解释一下为什么我们需要在运行时更改代码吗?有时,您可能需要根据程序前面收到的输入调用一个方法 它可以用于基于键索引的值的动态计算,其中每个键都以不同的方式计算,或者计算需要从不同的源获取所需的数据。不使用switch语句,您可以使用methodName

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

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


有人能解释一下为什么我们需要在运行时更改代码吗?

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


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

有时您可能需要根据程序中先前接收到的输入调用一个方法


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

在运行时更改代码有三大好处:

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

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

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

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

    在运行时更改代码有三大好处:

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

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

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

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

    您以前从未使用过策略模式?此外,我不明白这与函数式编程有什么关系。函数式编程不是在运行时更改代码。这里我所说的更改代码是指在运行时使用反射或其他方法重写代码。那么??您以前从未使用过策略模式?此外,我不明白这与函数式编程有什么关系。函数式编程不是在运行时更改代码。这里我所说的更改代码是指在运行时使用反射或其他方法重写代码。那么呢??