相关疑难解决方法(0)

功能性,声明性和命令式编程

功能,声明和命令式编程这两个术语是什么意思?

paradigms terminology

464
推荐指数
9
解决办法
18万
查看次数

OOP与功能编程与程序

这些编程范例之间有什么区别,它们是否更适合于特定问题,或者任何用例都优先于其他问题?

建筑实例赞赏!

paradigms

234
推荐指数
5
解决办法
18万
查看次数

真正理解程序和功能之间的区别

我真的很难理解程序函数编程范例之间的区别.

以下是维基百科关于函数式编程的前两段:

在计算机科学中,函数式编程是一种编程范式,它将计算视为数学函数的评估,并避免状态和可变数据.它强调功能的应用,与强调状态变化的命令式编程风格形成对比.函数式编程的根源在于lambda演算,这是一种在20世纪30年代开发的用于研究函数定义,函数应用和递归的正式系统.许多函数式编程语言可以被视为lambda演算的详细说明.

在实践中,数学函数与命令式编程中使用的"函数"概念之间的区别在于命令式函数可能具有副作用,从而改变程序状态的值.因此,它们缺乏参照透明度,即相同的语言表达式可能在不同的时间导致不同的值,这取决于执行程序的状态.相反,在函数代码中,函数的输出值仅取决于输入到函数的参数,因此f使用相同的参数值调用函数 两次x将产生相同的结果f(x).消除副作用可以更容易理解和预测程序的行为,这是开发函数式编程的关键动机之一.

在第2段中,它说

相反,在函数代码中,函数的输出值仅取决于输入到函数的参数,因此f使用相同的参数值调用函数两次x将产生相同的结果f(x).

程序编程的情况不一样吗?

什么应该在程序性和功能性中脱颖而出?

procedural-programming programming-languages functional-programming

110
推荐指数
5
解决办法
5万
查看次数

使用C#vs F#或F#vs C#有什么好处?

我为一家技术公司工作,该公司比产品发货做更多的原型设计.我刚才被问到C#和F#有什么区别,为什么MS创建F#以及它会比C#更好.

我一直在使用这种语言,我喜欢它,所以我可以很容易地继续讨论F#的强大功能,但是我缺乏C#的经验来说明为什么我们应该使用它而不是另一种.

使用C#vs F#或F#vs C#有什么好处?

.net c# f#

93
推荐指数
8
解决办法
14万
查看次数

23
推荐指数
0
解决办法
3万
查看次数

像R/SAS这样的统计编程语言是否被认为是功能性或程序性的

阅读本文后,我仍然不明白其中的区别

所以,我想,也许我熟悉的一种语言可以作为一个例子,而不是询问功能与程序编程之间的区别.

因此,我的问题是:R/SAS语言是程序性的还是功能性的?

procedural-programming functional-programming r sas

14
推荐指数
1
解决办法
8502
查看次数

过程式语言和函数式语言之间的区别?

我最近在一次采访中被问到这个问题。我无法得到正确的答案。

当您使用相同的参数重复调用过程语言(如 C)和函数语言(如 haskell)中的函数时,您可能会得到不同的结果?我在[this](过程式编程和函数式编程之间有什么区别?)帖子中读到,纯函数式语言总是会产生相同的答案。为什么函数式语言会出现这种情况,而过程式语言则不然?

c procedural haskell functional-programming

1
推荐指数
1
解决办法
1991
查看次数

While 循环的行为不明确

作为 js 的新手,当我遇到以下代码的一些特殊行为时,我正在玩循环:

var i = 5;

while(i!=0){
  console.log(i);
  i--;
}
Run Code Online (Sandbox Code Playgroud)

OUTPUT: 543211
Run Code Online (Sandbox Code Playgroud)

我在 c++ 中复制了相同的代码:

OUTPUT: 543211
Run Code Online (Sandbox Code Playgroud)
OUTPUT: 54321
Run Code Online (Sandbox Code Playgroud)

知道我是否遗漏了两种语言之间的一些重要差异会有所帮助。

javascript while-loop

0
推荐指数
1
解决办法
34
查看次数

为什么每次我尝试更改 Scala 中任何数据结构的值时都没有任何反应?

当我使用会更改数组或列表的东西时,通常会发生这种情况。例如这里:nums.drop(i)。我尝试调试,但它甚至看不到该行,如果您向我解释这种行为,我将不胜感激

    def findDuplicates(nums: Array[Int]): List[Int] = {
    nums.foldLeft(0)((accumValue, nextEl) => {
      if (nums.tail.contains(nextEl)) {
        accumValue
      } else {
        nums.drop(accumValue)
        accumValue
      }
    })

    nums.toList
  }
Run Code Online (Sandbox Code Playgroud)

arrays syntax functional-programming scala immutability

0
推荐指数
1
解决办法
52
查看次数