iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 23
0
自我挑戰組

用 laravel 尻出自己形狀的 line bot,還要撐三十天!系列 第 23

【第二十三天】花生神模式!?

【第二十三天】花生神模式!?

昨天我們試著把自己用的Transformer整理乾淨,今天就來幫Controller減肥吧!
在整理之前我麼先來分析一下現在這個Controller可以怎麼拆!

首先知道這Controller做了哪些事情

恩~足足有一百多行呢!Shit!
好吧!自己拉的兔子自己養!
https://ithelp.ithome.com.tw/upload/images/20171228/20107380JBufEIhVAX.jpg

減肥之前我們先來仔細想想,以這份專案來說,SlashCommand應該還會要寫很多(Twitch、漫畫、動畫)且回傳內容很雷同!
(望向標題的LINE Bot...如果這是考大學聯考的作文比賽,我應該可以開始睡覺了)
所以如果把SlashCommand拉出來做兔子處理應該很合理!

接著,稍微找一下設計模式的文件!應該有比較適合我們現在處境的方法!

恩~雖然感覺可以適用工廠模式,但做起來好不好用還是得Try看看了!

廢話不多說了,詳細步驟請看PR吧!每個commit在幹嘛都寫在上面。

寫到最後看起來好像也不知道是什麼模式,但看起來是順眼多了~
也許就像上面文章裡某大大提到的

雖然提到了策略模式,但不熟 Design Patterns 的讀者朋友不用擔心,我們只需要把程式碼的壞味道用最自然的方式重構,您就會體會到 Strategy Pattern 的樣子、目的、用法, Strategy Pattern 將會自動的浮現出來。

沒錯,只要相信正確的道路,努力朝著設計原則實現,相信兔子會越來越少,寫起來會越來越好的!

雖然還是事後抓了兩隻兔子
https://ithelp.ithome.com.tw/upload/images/20171228/20107380BL2ABXVQCC.jpg


上一篇
【第二十二天】來試著整理一下目前的程式碼
下一篇
【第二十四天】補充一下這幾天的認知錯誤
系列文
用 laravel 尻出自己形狀的 line bot,還要撐三十天!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言