麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

詳解JavaScript的策略模、式編程

2019-11-02 15:26:43
字體:
供稿:網(wǎng)友

   這篇文章主要介紹了詳解JavaScript的策略模式編程,包括函數(shù)和類作為策略的情況以及多環(huán)境下的策略模式,需要的朋友可以參考下

  我喜歡策略設(shè)計模式。我盡可能多的試著去使用它。究其本質(zhì),策略模式使用委托去解耦使用它們的算法類。

  這樣做有幾個好處。他可以防止使用大條件語句來決定哪些算法用于特定類型的對象。將關(guān)注點分離開來,因此降低了客戶端的復雜度,同時還可以促進子類化的組成。它提高了模塊化和可測性。每一個算法都可以單獨測試。每一個客戶端都可以模擬算法。任意的客戶端都能使用任何算法。他們可以互調(diào)。就像樂高積木一樣。

  為了實現(xiàn)策略模式,通常有兩個參與者:

  該策略的對象,封裝了算法。

  客戶端(上下文)對象,以即插即用的方式能使用任何策略。

  這里介紹了我在Javascrip里,怎樣使用策略模式,在混亂無序的環(huán)境中怎樣使用它將庫拆成小插件,以及即插即用包的。

  函數(shù)作為策略

  一個函數(shù)提供了一種封裝算法的絕佳方式,同時可以作為一種策略來使用。只需通過一個到客戶端的函數(shù)并確保你的客戶端能調(diào)用該策略。

  我們用一個例子來證明。假設(shè)我們想創(chuàng)建一個Greeter 類。它所要做的就是和人打招呼。我們希望Greeter 類能知道跟人打招呼的不同方式。為了實現(xiàn)這一想法,我們?yōu)榇蛘泻魟?chuàng)建不同的策略。

  ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 // Greeter is a class of object that can greet people. // It can learn different ways of greeting people through // 'Strategies.' // // This is the Greeter constructor. var Greeter = function(strateg
俺去也電影網(wǎng)[www.aikan.tv/special/anquyedianyingwang/]
y) { this.strategy = strategy; };   // Greeter provides a greet function that is going to // greet people using the Strategy passed to the constructor. Greeter.prototype.greet = function() { return this.strategy(); };   // Since a function encapsulates an algorithm, it makes a perfect // candidate for a Strategy. // // Here are a couple of Strategies to use with our Greeter. var politeGreetingStrategy = function() { console.log("Hello."); };   var friendlyGreetingStrategy = function() { console.log("Hey!"); };   var boredGreetingStrategy = function() { console.log("sup."); };   // Let's use these strategies! var politeGreeter = new Greeter(politeGreetingStrategy); var friendlyGreeter = new Greeter(friendlyGreetingStrategy); var boredGreeter = new Greeter(boredGreetingStrategy);   console.log(politeGreeter.greet()); //=> Hello. console.log(friendlyGreeter.greet()); //=> Hey! console.log(boredGreeter.greet()); //=> sup.
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 亚洲视频综合 | 国产区二区 | 韩国三级日本三级香港三级黄 | 黄色va视频 | 视频国产一区二区 | 泰剧19禁啪啪无遮挡大尺度 | xxxx18韩国护士hd老师 | 久久久久免费电影 | 中文字幕视频在线播放 | 国产精品久久久久久影院8一贰佰 | 综合网天天射 | 欧美日本亚洲视频 | 97伦理| 成人在线免费视频播放 | 国产精品一区在线免费观看 | 日本精品婷婷久久爽一下 | 一级国产精品一级国产精品片 | va视频在线 | 欧美成人免费在线视频 | 黄色大片免费看 | 日韩精品dvd | 国产1区2区3区中文字幕 | 久产久精品 | 久草在线高清 | 亚洲第一成网站 | 日本黄色一级视频 | 99精品在线视频观看 | 人禽l交免费视频观看 视频 | 羞羞视频免费网站日本动漫 | 国产成人强伦免费视频网站 | 国产日韩欧美一区 | 国产91九色视频 | 欧美一级网 | 性欧美在线视频 | 91网视频在线观看 | 欧美特黄a| 欧美精品一区二区中文字幕 | 国产亚洲高清在线精品不卡 | 久久久av亚洲男天堂 | 黄片毛片一级 | 久久老司机精品视频 |