狀態(tài)機(jī)的簡(jiǎn)單介紹
最近公司做棋牌的項(xiàng)目,當(dāng)時(shí)還是不理解什么是狀態(tài)機(jī),當(dāng)一個(gè)項(xiàng)目做完之后,大腦里已經(jīng)有了一個(gè)狀態(tài)機(jī)的概念,所以今天就與大家分享出來,由于本人的技術(shù)博淺,有很多地方?jīng)]有理解通透的地方,請(qǐng)望大神指點(diǎn),抱拳了。
什么是狀態(tài)機(jī)?
我理解的狀態(tài)機(jī)就是,當(dāng)一個(gè)事件觸發(fā)之后,就會(huì)去尋找一個(gè)相對(duì)應(yīng)的大的狀態(tài),然后在到大的狀態(tài)里去尋找小的狀態(tài),然后執(zhí)行完畢,給用戶返回。
可能本人理解的不是多通透,在此邊查資料邊學(xué)習(xí),與大家一起分享。
一丶狀態(tài)模式
狀態(tài)模式(State):當(dāng)一個(gè)對(duì)象的內(nèi)在狀態(tài)改變時(shí)允許改變其行為,這個(gè)對(duì)象看起來像是改變了其類。
狀態(tài)模式主要解決的是當(dāng)控制一個(gè)對(duì)象狀態(tài)轉(zhuǎn)換的條件表達(dá)式過于復(fù)雜時(shí)的情況,把狀態(tài)的判斷邏輯轉(zhuǎn)移到表示不同狀態(tài)的一系列類當(dāng)中,可以把復(fù)雜的邏輯簡(jiǎn)化,當(dāng)然如果這個(gè)狀態(tài)判斷很簡(jiǎn)單,那就沒有必要用 "狀態(tài)模式" 了。
狀態(tài)模式結(jié)構(gòu)圖
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26