范式总结
至精而后阐其妙,至变而后通其数
——《文心雕龙·神思》
众人落座之后,冒号开始了第四课的讲授:“我们已经涉及了不少编程范式,虽只是走马观花,亦可管窥一斑。现用表格归纳如下——”
编程范式 | 核心概念 | 程序运行 | 典型应用 | |
命令式/过程式 (Imperative/Procedural) |
命令/过程 (Command /Procedure) |
命令执行 | 交互式、事件驱动型系统;数值计算等 | |
声明式 (Declarative) |
函数式/应用式 (Functional /Applicative) |
函数 (Function) |
表达式计算 | 微积分计算;数学逻辑;博弈等 |
逻辑式 (Logic) |
断言 (Predicate) |
逻辑证明 | 机器证明;专家系统;自然语言处理等 | |
对象式(Object-Oriented) | 对象(Object) | 对象间信息交换 | 大型复杂交互式系统等 | |
并发式/并行式 (Concurrent/Parallel) |
进程/线程 (Process /Thread) |
进程/线程间通讯与同步 | 图形用户界面;多任务系统如操作系统、服务器等;计算密集型系统如科学计算、人工智能等; | |
泛型式(Generic) | 算法 (Algorithm) |
算法实例化 (多发生于编译期) |
普适性算法如排序、搜索等;集合类容器等; | |
元编程(Metaprogramming) | 程序 (Program) |
动态生成代码或自动修改执行指令 | 自动代码生成;定义结构化配置文件;IDE;编译器;解释器;人工智能;领域特定语言(DSL)等 | |
切面式(Aspect-Oriented) | 切面(Aspect) | 在接入点处执行建议 | 日志输出;代码跟踪;性能监控;异常处理;安全检查;事务管理等 |
冒号作结案陈词:“编程范式当然不止以上八种,但暂时不必贪多求全。不同的范式各擅胜场,有风格之别而无高低之分。现在请大家畅所欲言,谈谈这段时间的学习感受。”
叹号表情有点复杂:“通过前面的学习,让我长了不少见识,只是——”
“但讲无妨。”见叹号有些吞吞吐吐,冒号鼓励道。
“只是觉得有点——纸上谈兵。”叹号鼓足勇气说出心里话。
引号不以为然:“我倒觉得应该更深入地去了解这些范式,现在有了一些感性认识,但还非常肤浅,希望以后能进一步展开。”
逗号挺实在:“有些地方似懂非懂,听起来挺费劲的,直到情景编程才觉得轻松了些。以后可不可以多谈些具体的编程知识、编程技巧和编程经验?”
句号拍了拍他的肩膀:“你想学的是招法,老冒传的是心法。”
时间: 2024-10-22 04:23:11