1
2
Brian McNamara 的 F# 开发团队,有一个有趣的博客 How does functional programming affect the structure of your code? . 我倾向于同意他的评估,即功能编程对实际的代码结构、实现级别和单个例程的影响最大,而对整个体系结构、模块和子系统级别的影响较小。 也就是说,我认为fp可以影响问题的攻击方式,通常会导致完全不同的方法,如DSL、异步代码、过滤图、参与者等,但这些都可以被视为“中间”解决方案,不会影响更大的体系结构,如分布式、REST、客户机服务器等。 |
2
4
设计过程应该是OOP不可知论。也许我们需要对象和类,也许我们不需要。也许很大一部分会使用函数技术。也许它所需要的只是一个5分钟的Perl脚本。这取决于我们要完成什么。 也就是说,可以提出这样一个论点,即OOP可能会妨碍纯功能设计。可能会有其他的论据,但事实并非如此。可能会有另一种论据,即你只需要运用你最好的判断,平衡这两种范式。其他人会插话说,这两种方法是正交的,可以合并而不产生冲突。 但这都是抽象的。答案是mu。提出一个真正的问题,然后我们就可以告诉您一个功能性或OOP方法是否合适,以及在什么级别。 |
3
0
我有点偏向
参考文献。
|
4
0
我同意使用FP实现技术进行OOP高级分解是一个很好的策略;我在博客中讨论了这一点: How does functional programming affect the structure of your code? |
nanounanue · 使用python和高级操作符的函数管道 6 年前 |
Zazaeil · 这个特定的递归可以用尾部优化的方式重写吗? 6 年前 |
corvid · 使用ramda通过变量进行升序/降序 6 年前 |
CodingNow · Scala:如何制作多种方法并逐一应用? 6 年前 |