命令式也被叫做指令式
命令式編程就是:為了完成一個(gè)工作,你需要一步一步的告訴計(jì)算機(jī)該怎么做,計(jì)算機(jī)按照你的指令一步步完成這個(gè)工作

image.png
聲明式編程是指:
你告訴計(jì)算機(jī)你想要完成什么工作,由計(jì)算機(jī)自己去設(shè)計(jì)執(zhí)行路徑,將你想要的反饋給你。
顯然,聲明式要求計(jì)算機(jī)或者是運(yùn)行時(shí)具備一定的智能。
因此,聲明式語言一般都是針對(duì)特定任務(wù)的領(lǐng)域?qū)S谜Z言。
例如:SQL——你告訴計(jì)算機(jī)你需要的結(jié)果集,數(shù)據(jù)庫將結(jié)果集返回給你。至于數(shù)據(jù)庫是如何實(shí)現(xiàn)結(jié)果集的查詢,我們并不需要關(guān)心。

image.png
舉一個(gè)前端的例子:
想要改變某個(gè)文字的顏色
用jQuery/JS實(shí)現(xiàn)就是命令式的,
一步步的描述該做什么:
1.要從dom中獲取到這個(gè)元素
2.改變這個(gè)元素的樣式
react就是聲明式的,直接描述你需要文字變成什么顏色(直接改變className或style的state值)至于如何操作dom不需要關(guān)心,那是react的事情
2023-02-06