iT邦幫忙

design pattern相關文章
共有 395 則文章

技術 Day35. 代理模式

本文同步更新於blog Proxy Pattern 為另一個對象提供一個替身或佔位符以控制這個對象的訪問。 代理模式將類別分為兩類:分別是實體類別 (Re...

鐵人賽 Modern Web DAY 9

技術 Day 09 - Design System x 實作 — Typography

雖然昨天已經介紹了如何在你的網頁中實作 Color System,但嚴格上來說今天才算是這系列第一篇的實作,畢竟 Color 只涵蓋了 CSS 的部分,並且是...

鐵人賽 Software Development DAY 3

技術 IT鐵人DAY 3-物件導向基本概念(2)

  已經知道了類別與物件的差別以後,接下來就談談類別的方法該怎麼使用,以及物件導向的三大特性吧! 基本概念 方法(Method)   簡單來說,方法內定義了一...

技術 Day34. 範例:歌曲排行(迭代器模式)

本文同步更新於blog 需求一:KTV系統要按照新增到系統的時間,由舊到新,實作歌曲排行 定義系統存取歌曲的類別(解析傳進來的data) <?...

技術 [PoEAA] Data Source Architectural Pattern - Table Data Gateway

本篇同步發布於個人Blog: [PoEAA] Data Source Architectural Pattern - Table Data Gateway 1....

鐵人賽 Software Development DAY 16

技術 Day16. 樣板方法模式

本文同步更新於blog Template Method Pattern 在一個方法中定義一個算法的骨架,而將一些步驟延遲到子類中。 樣板方法模式會將類別分...

鐵人賽 Software Development DAY 13

技術 Day13. 範例:漢堡點餐系統(裝飾者模式)

本文同步更新於blog 需求一:客戶想要一個漢堡點餐系統 <?php namespace App\DecoratorPattern\Burger...

技術 Day 57. 系列完結心得

嗨,我是Bear。 遵守在Day30時與自己的約定,於年前寫完所有設計模式。稍晚會將目錄更新至Day1。 以下這段話給2019年的自己 讀書會還好玩吧?...

鐵人賽 Software Development DAY 14

技術 [Day14] 原型模式 | Prototype Pattern

本文同步分享於個人blog 定義 用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件。 看完這個定義,大概可以猜到,這個模式的用途是讓我們...

鐵人賽 Software Development DAY 8
Hey! Go Design Patterns 系列 第 8

技術 DAY 8:Producer Consumer Pattern,點菜了,三份穿褲子的豬,一盤熱空氣,把牛變成鱒魚

2023/04/05 更新: 為了避免本文章散落在不同網站,之後統一由部落格更新,再麻煩從部落格查看~ 什麼是 Producer Consumer Patt...

鐵人賽 Software Development DAY 23

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

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

鐵人賽 Software Development DAY 20

技術 [Day20] 享元模式 | Flyweight Pattern

文同步分享於個人blog 定義 運用共享技術有效地支持大量細粒度的物件。 享元模式是運用共享技術有效地支持大量細粒度的物件。他可以避免大量相似類的開銷...

技術 Day52. 範例:新產品開發(職責鏈模式)

本文同步更新於blog 情境:公司開發了一個新產品,客戶端有許多不同的請求 客戶端的請求類別 &lt;?php namespace App\Ch...

技術 Day48. 範例:生物分類學(組合模式)

本文同步更新於blog 情境:原本的生物分類學(界門綱目科屬種) &lt;?php namespace App\CompositePattern\T...

鐵人賽 Software Development DAY 18

技術 [Day18] 裝飾者模式 | Decorator Pattern

文同步分享於個人blog 定義 裝飾模式動態將責任附加在物件上,若要擴展功能上,裝飾者提供比繼承更有彈性的替代方案。 拿生活來說,我買了一棟三房兩廳兩...

鐵人賽 Software Development DAY 5

技術 [Day5] 老闆:來一碗大腸麵線 ─ 工廠方法(Factory Method) <模式篇>

嗨 大家好 我是一路爬坡的阿肥 突然想到雙十連假要去澎湖渡假敲開心~(灑花) 啊 等一下!(是真的突然想到) 那不就表示就連在澎湖也要記得發文嗎 ? 情境描述...

技術 Day45. 解譯器模式

本文同步更新於blog Interpreter Pattern 給定一個語言,定義它的語法表示與文法。 利用不同的表達式來翻譯語言中的句子。 解譯器模式會...

技術 [PoEAA] Domain Logic Pattern - Domain Model

本篇同步發布於個人Blog: [PoEAA] Domain Logic Pattern - Domain Model 1. What is Domain Mod...

技術 Day31. 單例模式

本文同步更新於blog Singleton Pattern 確保一個類只有一個實例,並提供一個全局訪問點。 單例模式只會將類別分為一類,即單例類別 (Si...

技術 Day32. 範例:資料庫連線(單例模式)

本文同步更新於blog 需求一:客戶想要能與資料庫連線的類別 &lt;?php namespace App\SingletonPattern\DBC...

鐵人賽 Software Development DAY 11
Hey! Go Design Patterns 系列 第 11

技術 DAY 11:Thread-Specific Storage Pattern,高併發的多重宇宙空間

2023/04/05 更新: 為了避免本文章散落在不同網站,之後統一由部落格更新,再麻煩從部落格查看~ 什麼是 Thread-Specific Storag...

鐵人賽 Software Development DAY 25

技術 [Day25] 中介者模式 | Mediator Pattern

文同步分享於個人blog 定義 定義一個 Mediator 物件用來封裝一組物件的互動方式。Mediator 藉由避免物件間相互直接的引用,從而降低它...

技術 Day53. 中介者模式

本文同步更新於blog Mediator Pattern 集中相關對象的之間複雜的溝通與控制方式。 中介者模式會將類別分為兩類:分別是中介者類別 (Med...

技術 Day56. 範例:各國婚禮(訪問者模式)

本文同步更新於blog 情境:這是一間國際婚禮公司 &lt;?php namespace App\VisitorPattern\Wedding;...

鐵人賽 Software Development DAY 4
Hey! Go Design Patterns 系列 第 4

技術 DAY 4:Guarded Suspension Pattern,你不會死的,因為我會保護你

2023/04/05 更新: 為了避免本文章散落在不同網站,之後統一由部落格更新,再麻煩從部落格查看~ 什麼是 Guarded Suspension Pat...

鐵人賽 Software Development DAY 11

技術 Day11. 範例:收銀機 (策略模式)

本文同步更新於blog 需求一:客戶想要一台收銀機 &lt;?php namespace App\StrategyPattern\CashRegist...

鐵人賽 Software Development DAY 16

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

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

鐵人賽 Software Development DAY 4

技術 IT鐵人DAY 4-物件導向基本概念(3)

修飾符(Modifier)   上一篇有講到封裝的特性,也就是把一個類別要運行操作所需用到的資訊都包在一起,其中這些資訊的存取權限設定就相對重要,透過修飾符就可...

技術 Day54. 範例:打招呼(中介者模式)

本文同步更新於blog 情境:以下是人腦的運作程式 &lt;?php namespace App\MediatorPattern\SayHello;...

鐵人賽 Software Development DAY 27

技術 [Day27] 備忘錄模式 | Memento Pattern

文同步分享於個人blog 定義 定義一個 Mediator 物件用來封裝一組物件的互動方式。Mediator 藉由避免物件間相互直接的引用,從而降低它...