如果我将成员变量设置为尽可能多的const,并将频繁更改的数据作为接口方法的输入参数,会发生什么情况?
因此,方法拥有参数(const成员)并操作数据,而不是拥有对自身进行操作的数据拥有方法。
这种风格是函数式的还是函数式的,或者只是称之为“无状态OOP"?
有什么理由鼓励或阻止它吗?
发布于 2015-03-25 05:32:37
我不认为它是函数式的,因为函数式倾向于暗示你的程序是由可组合的函数(理想情况下是纯函数)组成的。然而,函数式编程的“原则”似乎是存在的--不变性,引用透明性。您唯一(可能)缺少的就是作为第一类对象的函数。要真正被认为是函数式编程,你确实需要拥有被视为第一类对象的函数-它们可以被赋值,作为参数传递,以及从其他函数返回。因此,我认为这应该被认为是具有功能元素的OOP。
更精通编程语言设计的人可以随意修改或反驳这个答案!
https://stackoverflow.com/questions/28094396
复制相似问题