1. 什么是声明式编程?(Declarative)
简单的说,你只需要告诉计算机,你要得到什么样的结果,计算机则会完成你想要的结果,以Vue为例,在页面中通过 {{ }} 显示一个data里面的变量,你只需要改变这个变量,页面就会跟着刷新,这就是你只需要结果,vue 内部去处理过程,这就是声明式编程
2. 什么是命令式编程?(Imperative)
用详细的命令机器怎么去处理一件事情以达到你想要的结果.
例如你想通过点击改变页面中某一个元素,首先要获取按钮,再给按钮添加点击事件,获取要改变的元素,执行点击函数,改变元素达到自己的目的,这是一步一步的步骤操作,就如同给计算机发布命令,一步一步执行,这就是命令式编程
3.两者优缺点
命令式编程更加的精细化,更严谨,程序也会一丝不苟的执行你的命令。但是操作步骤比较多,代码量大,影响开发效率.
声明式让你可以更关注在状态表现,而不用去考虑底层如何实现, 声明式编程能在特定的更高层面代码领域我们带来效率的提升,程序员只需要对想要的结果进行深思熟虑,程序会自动的解决过程。当然代码看起来更简洁也是大大的满足了众多强迫症程序猿,但同时 他的可读性相较于命令式有点差。