iT邦幫忙

design pattern相關文章
共有 479 則文章
鐵人賽 Software Development DAY 4

技術 Day4. 裡氏替換原則

本文同步更新於blog Liskov Substitution Principle (LSP) Subtypes must be substitutable...

鐵人賽 Software Development DAY 3

技術 Day3. 開放封閉原則

本文同步更新於blog Open-Close Principle (OCP) A software artifact should be open for...

鐵人賽 Software Development DAY 2

技術 Day2. 單一職責原則

本文同步更新於blog Single Responsibility Principle (SRP) A module should have one, an...

鐵人賽 Software Development DAY 1

技術 Day1. 前言(動機與簡介)

前言 大家好,我是Bear,目前是名PHP工程師。寫文章的當下,著迷於Clean Code、Design Pattern跟Testing。 最近在研究自己寫co...

技術 Android Singleton 單例模式應用01

目的:確保一個類別只會產生一個物件 廢話不多說馬上來看Singleton怎麼實作這個寫法在Android Memory Leak及衍伸問題01有提到我打算把每個...

技術 橋接模式(BridgePattern)

目的: 如果有兩大類模組是多對多的組合,如本次Smaple Code. Nick和Addidas 包包都有紅、藍、黃....或其他顏色 就可能呈現下面6種組合...

鐵人賽 Software Development DAY 30

技術 [Day30] 總而言之 融會貫通最重要

嗨 大家好 我是一路爬坡的阿肥 雖然是第一次參加 有很多不足的地方 但是謝謝有訂閱這個系列文章的你們 讓阿肥有繼續寫下去的動力 之後還有機會的話 就繼續再來看我...

鐵人賽 Software Development DAY 29

技術 [Day29] 操作大量資料的好幫手 ─ 迭代器(Iterator) <實作篇>

嗨 大家好 我是一路爬坡的阿肥 昨天晚上搭立榮的飛機回來真心覺得座位大 還有飲料可以喝而且只要40幾分就到了已經回不去坐船省錢的堅持啦 顧客的資訊 先建立顧客...

鐵人賽 Software Development DAY 28

技術 [Day28] 操作大量資料的好幫手 ─ 迭代器(Iterator) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 今天要介紹最後一個模式了真的是...太開心啦! 今天是澎湖遊最後一天,還是一樣跟大家分享個照片~ 最想念的應該是漂亮的海水跟夕陽...

鐵人賽 Software Development DAY 27

技術 [Day27] 為厲害的怪獻上會心一擊 ─ 策略(Strategy) <實作篇>

嗨 大家好 我是一路爬坡的阿肥 今天是澎湖遊 Day3,先來分享個照片吧~ 南海跳島之旅+海洋牧場get開牡蠣技能 晚上參加大人們的喝喝大會 充實的一天~...

鐵人賽 Modern Web

技術 Day 46. 通用武裝・迭代器模式 X 泛用迭代器 - Iterator Pattern Using TypeScript

閱讀本篇文章前,仔細想想看 泛用類別與泛用介面結合時的注意事項為何? 如果還不清楚可以看一下前一篇文章喔~ 其實筆者在泛用方面的型別推論與機制並沒有討論很...

鐵人賽 Software Development DAY 26

技術 [Day26] 為厲害的怪獻上會心一擊 ─ 策略(Strategy) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 今天是澎湖遊 Day2,先來分享個照片吧~ 從民宿就能看到海景 情境描述 佐藤和肥是在異世界奮鬥多年的冒險者。雖然他的同伴們...

鐵人賽 Software Development DAY 26

技術 Day 26 - 實作練習 - 加入地圖

當我們已經能夠管理所有線上的玩家後,需要再進一步做的處理就是將其他玩家都顯示出來。因此我們要先增一個叫做 join 的指令表示有一個玩家進入了地圖。 Playe...

鐵人賽 Software Development DAY 25

技術 [Day25] 每個人都要訂閱的颱風假最新通知 ─ 觀察者(Observer) <實作篇>

嗨 大家好 我是一路爬坡的阿肥 晚上就要準備搭去澎湖啦! 接下來四天阿肥會提醒自己 醒來的第一件事不是衝去看海 是趕快PO文! 定義各種介面 Data 我們先...

鐵人賽 Software Development DAY 25

技術 Day - 25. 實作練習 - 連線池

到目前為止我們已經能讓遊戲的操作跟伺服器連結起來,可以透過伺服器去管理一些行為的操作。不過要讓其他玩家能夠出現在地圖上,我們就必須調整現階段的程式碼讓伺服器能夠...

鐵人賽 Software Development DAY 24

技術 [Day24] 每個人都要訂閱的颱風假最新通知 ─ 觀察者(Observer) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 今天上班 發現好多人沒來 今年的最後一個連假 終於要來啦! 情境描述 不管是上班族還是學生,除了關心國定假日放哪幾天、接下來有...

鐵人賽 Software Development DAY 23

技術 [Day23] 打造輕鬆編輯的顏文字編輯器吧! ─ 命令(Command) <實作篇>

嗨 大家好 我是一路爬坡的阿肥 這禮拜四開始就連假啦! 希望有小天使可以幫我生完所有進度 定義 Command 的 介面與抽象類別 我們先以 interfac...

鐵人賽 Modern Web

技術 Day 41. 戰線擴張・模擬戰 — UBike 地圖 X 外觀模式 - Façade Pattern in TypeScript

閱讀本篇文章前,仔細想想看 還記得單例模式 Singleton Pattern嗎?今天會用到喔! 本篇文承接上一篇文,因此如果是跳到這篇的話可以先從上一篇或...

鐵人賽 Software Development DAY 22

技術 [Day22] 打造輕鬆編輯的顏文字編輯器吧! ─ 命令(Command) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 今天是blue nonday... 不過因為有鐵人賽的加入 讓阿肥想blue也沒時間blue啦! 情境描述 肥醬喜歡在社交軟...

鐵人賽 Software Development DAY 20

技術 [Day20] 我要輕鬆成為股海高手! ─ 外觀(Facade) <實作篇>

嗨 大家好 我是一路爬坡的阿肥 昨天因為老毛病發作想說去看中醫結果脖子後面被札了十幾針還被喬到發出喀喀喀的聲音有種比發作時還要可怕的感覺 複雜的 API co...

鐵人賽 Software Development DAY 19

技術 [Day19] 我要輕鬆成為股海高手! ─ 外觀(Facade) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 最近阿肥的暈眩症又發作啦 如果接下來的文章有出現胡言亂語的情況 還請多多包涵 情境描述 大肥是個資深的玩股票高手,使用過不少平...

鐵人賽 Software Development DAY 18

技術 [Day18] Switch 的各種同捆包 統統裝起來 ─ 裝飾者(Decorator) <React 篇>

嗨 大家好 我是一路爬坡的阿肥 最近家裡大人把一些舊的遊戲轉賣 發現原來遊戲片可以這麼保值! 準備入手新的遊戲好期待呀 React 中的裝飾者 有讀過 Rea...

技術 [破] 第三堂課:程式設計模式討論與思辯

今日的課程是由我們課程助教Tyson來主講。 重點針對於前端的架構設計解析。 首先,我們要問怎麼樣才是一個好的程式架構? 很多從junior工程師要進階到s...

鐵人賽 Software Development DAY 17

技術 [Day17] Switch的各種同捆包 統統裝起來 ─ 裝飾者(Decorator) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 今天天氣好到 不像是颱風剛過一樣 希望下禮拜的雙十連假也能像今天這樣晴朗啊(懇求) 情境描述 老肥是販賣遊戲的經銷商。因為今年...

鐵人賽 Software Development DAY 16

技術 [Day16] 一次填好麵線跟拉麵的菜單可以嗎? ─ 組合(Composite) <React篇>

嗨 大家好 我是一路爬坡的阿肥 有句話說:「該還的還是得還」 颱風假的隔天就是償債日 工作進度持續繃緊中! React的組合模式 在前端開發中,我們會實作出許...

鐵人賽 Software Development DAY 16

技術 Day 16 - Singleton 的應用(一)

前面討論了連線遊戲是如何在伺服器跟玩家之間溝通的方法跟行為,不過遊戲跟 Web 和其他應用相比從初期就很快需要面對複雜的狀態問題。也因為這樣遊戲的除錯跟維護相對...

鐵人賽 Software Development DAY 15

技術 [Day15] 一次填好麵線跟拉麵的菜單可以嗎? ─ 組合(Composite) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 今天放颱風假比平常開心100倍 因為可以有更多時間寫文章啦! 情境描述 在大肥百貨美食街的麵食區,開著肥肥麵線攤跟壹LAN拉麵...

鐵人賽 Software Development DAY 14

技術 [Day14] 我需要一台喵喵翻譯機 ─ 轉接器(Adapter) <實作篇>

嗨 大家好 我是一路爬坡的阿肥 寫著寫著竟然已經撐兩個禮拜了! 果然有參加比賽有差 可以訓練自己擺脫三分鐘熱度的壞習慣 給個定義 我們知道轉接器模式主要的類...

鐵人賽 Software Development DAY 13

技術 [Day13] 我需要一台喵喵翻譯機 ─ 轉接器(Adapter) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 阿肥在寫本篇範例的時候 認真地想 如果真的有人成功發明出喵喵翻譯機的話 應該會造福各地的奴才們 然後成為人生勝利組吧 情境描述...

鐵人賽 Software Development DAY 12

技術 [Day12] 前端開發好朋友 ─ Storybook

嗨 大家好 我是一路爬坡的阿肥 今天是Happy Friday! 也是適合寫鐵人賽文章的好日子喔(疑?) Storybook 簡介 今天阿肥要先插個花,介紹一...