gpt4 book ai didi

debugging - 一些函数式编程构造会降低可调试性吗?

转载 作者:行者123 更新时间:2023-12-04 06:50:20 26 4
gpt4 key购买 nike

我听说以下功能降低了可调试性(因为它们是匿名的,调试器无法很好地跟踪它)

  • 匿名类
  • 内部类
  • 闭包/Lambda函数

  • 这是真的?

    最佳答案

    关于您已调出的特定功能,已经有了一些不错的答案。

    总的来说,我会说某些FP功能以及采用更FP风格的编程方面至少会与调试体验“互动”。例如,使用高阶函数,可以无点编程。当您这样做时,这会留下较少的标识符,例如在调试器的“本地”窗口中可以轻松检查的事物更少。封闭物通常是不透明的,直到您进入它们的 body 为止。

    FP还使用许多控制反转构造(惰性评估只是一个,“map”或“iter”而不是“foreach”是另一个),这会改变控制流程并可能影响“单步执行”的方式作品。

    随着FP变得越来越普遍,我希望调试工具将继续改进。我尚不清楚某些FP是否“固有地”更难调试,但是即使是这样,也不要忘记有关FP的太多知识,从而使您的代码最初不需要调试的可能性降低。 :)

    关于debugging - 一些函数式编程构造会降低可调试性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1894636/

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