gpt4 book ai didi

programming-languages - 一种设计为可测试的编程语言

转载 作者:行者123 更新时间:2023-12-03 08:36:26 29 4
gpt4 key购买 nike

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

6年前关闭。




Improve this question




是否有一种编程语言可以通过设计进行测试,或者至少在可测试性方面表现出非常好的特性?

例如,一种被设计成单元测试是编码过程的非可选部分的编程语言,或者更好的是,一种编程语言或多或少地从单元测试中推断出程序。

或者,如果您更喜欢稍微扭转这个问题,那么为了确保可测试性,什么命令式编程是不好的做法或不必要的?

面向对象编程呢?诸如 dependency injection 之类的东西和模拟库真的很有帮助 TDD ,这些实践不会从语言设计的一部分中受益吗?我一直在环顾四周,具有丰富元模型的语言往往允许非常DSL用目标语言编写的类似 API。这些库是在此基础上构建的,为什么不将这些东西纳入语言本身呢?

我发现blog post詹姆斯·布莱克 (James Black) 的引用有一个很好的观点。

Not long ago, I reflected on my testing habits for the past ten years, and I made a couple of interesting observations:

  • I feel the need to write tests for the code that I write very often.
  • Just as often, that need is thwarted by environmental constraints, so I end up not writing these tests.


您是否同意动态编程语言使编写测试更容易的说法?

最佳答案

Google 正在处理 noop作为一种语言(OOP,基于 Java),用于生成始终可测试的代码。

Noop is a new language that will run on the Java Virtual Machine, and in source form will look similar to Java. The goal is to build dependency injection and testability into the language from the beginning, rather than rely on third-party libraries as other languages do.



该语言还明确禁止某些使代码测试变得困难的结构,例如静态。

关于programming-languages - 一种设计为可测试的编程语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3371268/

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