一句话说说:命令式,声明式,函数式和面向对象编程

您所在的位置:网站首页 声明式编程语言有哪些 一句话说说:命令式,声明式,函数式和面向对象编程

一句话说说:命令式,声明式,函数式和面向对象编程

2024-07-10 22:49| 来源: 网络整理| 查看: 265

它们都是一种编程范式,或风格。它们都很棒,可以针对不同场合解决问题。

命令式编程,你关心的是“问题是怎么解决的”。程序按照你写下的步骤一步一步地来运行。显著的特点就是你会写下很多变量定义、赋值语句、遍历循环语句,来改变程序的一些状态参数。

声明式编程,你关心的是“要做什么”,而不关心“要怎么才能做到”。例如你写的SQL语句,能帮你获取到数据,而数据获取是如何实现的,一点都不关心(尽管可能你觉得写SQL语句不算编程,但它确实就是)。网页编程中用到的HTML 和CSS 也都属于声明式编程,它们要做的是展现内容,而不关心要怎么才能实现展示的过程。

函数式编程是声明式里面最火的一种编程范式。它关心的也是“What is to be done”,而不关心“How is it to be done”。它关心的是,什么作为输入,提供什么输出。函数是一等公民!举个例子,我不需要关心要怎么使用For循环来遍历一个数组,然后对它们做什么事情,我只需要用map(),reduce(),filter()…那些脏活交给它们就能完成并得到我想要的结果。

函数式编程里的技巧:纯函数(没有side-effects),高阶函数(输入或输出是一个函数);闭包;Immutability(Non-Mutable Data),不改变状态,就没有bug(大型应用中出现不知道在代码哪里,这个值被mutate了的bug),所以往往你的函数返回的是一个状态的副本。

面向对象编程可以说是命令式里面的主流了。它不仅关心要做什么,也关心要怎么做,更是以一种模拟现实世界模型以及它们之间关系的一种方式,来解决问题。

OOP特点:

Everything is an Object.Each Object contains Some Data Fields and Methods.OOPs Concepts: Abstraction,Encaspulation,Inheritance and Polymorphism

FP和OOP之间PK:

本作品采用《CC 协议》,转载必须注明作者和本文链接


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3