任何人都可以向我解释“多范式设计模式”一词的含义是什么? 我对“设计模式”很满意,但“多范式”这个词让我很困惑。
答案 0 :(得分:1)
在编程的背景下,"范例"通常指的是面向对象的,程序性的,功能性的,逻辑性的等等。所以" multiparadigm"将指的是与几种范式的特征有关的东西。例如。 Scala是一种支持面向对象和函数式编程的多范式语言。
短语"多范式设计模式"可能没有特定的技术含义;它只是在谈论他们希望描述为多范式的设计模式。也许是一种使用多种范式技术的设计模式?要详细说明这些描述的确切含义,我需要看到更多的背景,而不仅仅是这三个词。
答案 1 :(得分:0)
另外,对于这个问题,我请你参考James Coplien关于C ++多范式设计的工作:http://www.amazon.co.uk/Multiparadigm-Design-James-O-Coplien/dp/0201824671
在其中,他讨论了各种各样的抽象方法,包括模板(类似于Java / c#中的泛型),泛型函数,过程,对象和功能范例。这项工作的重点是分析领域,以发现最适合的范例 - 尚未建立的范式。
掌握多种范式的程序员在构思解决方案时会有更多选择。有些问题非常适合多态性,继承等等,其他问题更适合用功能概念或通用编程构建。较大的系统可能会受益于可能很好地混合这些的模块。任何数学上需要准确的东西,我可能会考虑功能优先但UI在顶部? OOP最有可能。
现在许多语言都是多范式的:Java主要是OOP,但现在有泛型,而版本8有lambda - 功能构造。 C#/ Vb现在已经有很长一段时间了,F#将其转变为功能优先。