从前端角度来看声明式编程与命令式编程
引入概念
- 声明式编程:告诉“机器”你想要的是什么(what),让机器想出如何去做(how)。
- 命令式编程:命令“机器”如何去做事情(how),这样不管你想要的是什么(what),它都会按照你的命令实现。
怎么去解释以上两句话呢?
我们带着这两个概念,用我们最熟悉的技术来解释两种编程范式
声明式编程 (Declarative Programming)
告诉“机器”你想要的是什么(what),让机器想出如何去做(how)。
...more code
</head>
<body>
<div id="box">声明式编程</div>
</body>
</html>
#box {
width: 100px;
height: 100px;
color: #fff;
background: #000;
}
命令式编程 (Imperative Programming)
命令“机器”如何去做事情(how),这样不管你想要的是什么(what),它都会按照你的命令实现。
var oDIv = document.createElement("div");
var text = document.createTextNode("命令式编程");
oDIv.appendChild(text);
oDIv.id = "box";
oDIv.style.width = 100 + "px";
oDIv.style.height = 100 + "px";
oDIv.style.color = "#FFF";
oDIv.style.background = "#000";
document.body.appendChild(oDIv);
总结
以上两个例子,得到的结果是一模一样的.
在我看来,声明式的背后是代码实现的高度抽象,声明式会让工作得到简化.
微信公众号
