因此,维基百科定义了编程范例:
计算机程序设计的基本形式
它在此站点上的范式标记的描述性文本中得到了反映。
我觉得这是一个令人失望的定义。任何懂得编程和范式的人都可以很好地处理这个问题,而不需要任何其他的知识。在许多抽象层次上有多种类型的计算机编程;在任何给定的编程范例中,多种样式都是可能的。例如,Bob Martin在“清洁代码”(13)中说,
把这本书看作是对目标导师学院清洁代码的描述。内在的技巧和教导是我们实践艺术的方式。我们愿意声称,如果你遵循这些教导,你将享受到我们所享受到的好处,你将学会编写干净而专业的代码。但不要误以为我们在任何绝对意义上都是“正确的”。
因此,Bob并没有声称拥有正确的面向对象编程风格,即使他,如果有人,可能会声称这样做。但是即使在他的编程学院里,我们也可能有不同风格的代码格式化(K&R,等等)。在许多层次上有许多编程风格。
那么,我们如何严格定义编程范式,以区别于其他类型的编程风格呢?基本面有些帮助,但不是具体的。我们如何定义这个短语,以一种比这两个词各自的意义更多的表达方式--换句话说,我们如何以一种能为说英语但不熟悉各种范式的人提供额外意义的方式来定义这个短语?
发布于 2012-09-28 02:24:06
那么,我们如何严格定义编程范式,以区别于其他类型的编程风格呢?
你没有。
程序设计是程序设计的一个方面,它比工程技术更精湛。人们不会到处试图严格定义绘画的立体派,或哥特式建筑。它们是人们应用于标签分类的术语。它们不是从某种自然的真理进化而来的。如果一座建筑使用尖尖的拱形,那么它更符合哥特式的范畴。
同样,如果我倾向于使用纯方法和不可变的数据,那么设计就有一个功能倾斜。这些概念可以混合和调整,并随着时间的推移而演变。当现代程序不是灰色的,具有不同范式的特征时,这是很少见的。
发布于 2012-09-28 00:43:48
彼得·范罗伊的著作中很好地解释了编程范式和构建这些范例的编程概念。尤其是在计算机编程作者的概念、技术和模型: Peter和Seif Haridi一书中。(这是同伴维基。) CTM (俗称)使用多范式分布式Oz编程语言来介绍所有主要的编程范例。
彼得·范罗伊( Peter )也担任了这张令人惊叹的海报展示了34个主要范例及其在不同轴上的关系和位置.。海报基本上是CTM的一个难以置信的压缩版本。关于这张海报的更详尽的解释载于假人编程范例:每个程序员都应该知道什么一文,该文章作为一章出现在G. Assayag和A. Gerzso编辑的“计算机音乐的新计算范式”一书中。例如,它非常简洁和容易理解,编程范例实际上是什么,编程概念是什么,以及两者是如何联系的。
https://softwareengineering.stackexchange.com/questions/166442
复制相似问题