傻瓜的编程范式是写的针对程序员的编程范式,介绍了编程范式、编程语言与编程概念之间的关系。
该篇文章是在学校期间花了较长时间翻译的,特别是最后一节,Contraint Programming(基于约束的编程)是在试用了Gecode库之后,才开始翻译的。第三节,Designing a language and its problems,因为不是很懂,所以就没翻译。译文当中没有加图,所以要从原文上看。
原文地址:
翻译:
Roy.pdf
本文的摘要如下:
本章介绍了所有的主流编程范式, 它们背后的概念, 以及上述两者(范式和概念)的关系.从一个广阔的视角出发, 我们帮助程序员选择合适的编程范式来解决手边问题.我们对30种有用的编程范式进行了分类, 给出了它们之间的关联.尽管它们之中大部分只在一个或少量概念上不同, 在实际编程却会造成极大的差异.在简要介绍编程范式是怎么影响语言设计之后, 我们给出两个语言设计的例子: 双范式语言(dual-paradigm languages)和确定性语言(definitive language).之后我们介绍了编程语言的主要概念: 记录, 闭包, 独立(并发)和有名状态.解释了数据抽象的主要原则和它们是如何组织大型程序的.最后, 我们以并发为焦点作了总结, 人们普遍认为并发是编程中的最难概念.为此我们给出了四种不怎么有名但无疑很重要的并发范式, 和主流编程语言想比,它们极大地简化了并发编程的困难: 声明式并发(eager,lazy都是), 函数式反应编程, 离散同步编程和约束编程.这些范式没有竞争条件, 可以用在没有其它范式适合的场所.我们解释了为什么对于多核处理器经常使用这些范式, 之后给出了计算机音乐领域中的几个例子.
阅读(1943) | 评论(0) | 转发(0) |