您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“web解釋器模式的優(yōu)缺點(diǎn)是什么”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
效果
解釋器模式的優(yōu)點(diǎn)
1)易于實(shí)現(xiàn)文法
解釋器模式中各類的設(shè)置,和語法書中的各個(gè)節(jié)點(diǎn)一一對(duì)應(yīng),而且具有相似的功能和相同的結(jié)構(gòu),實(shí)現(xiàn)起來非常簡單。
2) 易于改變和擴(kuò)展文法
解釋器模式使用類來表示文法,每個(gè)文法要素的功能都集中在對(duì)應(yīng)類中,這種自然的功能劃分的好處就是維護(hù)起來非常容易。無論是增加新功能還是維護(hù)已有功能都幾乎不會(huì)對(duì)已有功能造成影響。
3) 實(shí)現(xiàn)新表達(dá)式“計(jì)算”很容易
當(dāng)然,這里的計(jì)算可能是真的計(jì)算,也可能是實(shí)現(xiàn)某種功能。實(shí)現(xiàn)的方法也很簡單,只要為每個(gè)文法要素對(duì)應(yīng)的類實(shí)現(xiàn)所謂的計(jì)算功能就可以了。
解釋器模式的缺點(diǎn)
俗話說,有一利必有一弊,解釋器模式也是如此。如果需要表達(dá)的文法結(jié)構(gòu)非常復(fù)雜,這時(shí)為每個(gè)文法要素準(zhǔn)備對(duì)應(yīng)的類這件事就會(huì)成為很大的負(fù)擔(dān)。
實(shí)現(xiàn)
解釋器模式是設(shè)計(jì)模式中比較神奇的一個(gè)。所謂神奇,就是指只要按照指定的步驟進(jìn)行實(shí)現(xiàn),就有很大的概率得到理想的結(jié)果。在使用解釋器模式的時(shí)候,一般按照以下步驟進(jìn)行。
1)構(gòu)建語法樹
解釋器模式并沒有規(guī)定如何創(chuàng)建語法樹。語法樹可以通過某個(gè)高級(jí)的語法分析程序來生成,也可以用手寫的遞歸下降語法分析程序來創(chuàng)建,或者直接由客戶來提供都可以。
2)定義解釋操作
對(duì)于簡單的情況,只要直接為每個(gè)語法要素對(duì)應(yīng)的類生成"計(jì)算“動(dòng)作就可以。但是對(duì)于某些情況,用戶可能希望同一個(gè)語法樹實(shí)現(xiàn)不同的”計(jì)算“行為。例如對(duì)一個(gè)簡單的四則運(yùn)算語法樹,在進(jìn)行調(diào)試的時(shí)候,用戶可能希望直接得到運(yùn)算結(jié)果,但是,實(shí)際的運(yùn)用中又希望可以生成不同語言的代碼。這時(shí)使用后面將要說明的訪問者模式可能會(huì)更好。
“web解釋器模式的優(yōu)缺點(diǎn)是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。