iT邦幫忙

design pattern相關文章
共有 512 則文章
鐵人賽 Software Development DAY 1

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

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

技術 Day44. 範例:文字積木 (蠅量模式)

本文同步更新於blog 情境:這是公司生產的文字積木 <?php namespace App\Flyweight\Blocks; class...

鐵人賽 Software Development DAY 16

技術 [Day16] 橋接模式 | Bridge Pattern

此文同步於個人Blog 定義 將抽象部分與實現部分分離,使它們都可以獨立的變化。 橋接模式(Bridge Pattern)是用合成關係代替繼承關係,進...

鐵人賽 Modern Web DAY 6

技術 Day 06 - Design System — 為什麼前端工程師也該知道它?

新章 突入!終於進入到期待已久的第二章 Design System 啦! 那在講 Design System 之前想要先提到一個觀念:「前期規劃 > 實作...

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

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

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

技術 DAY 3:Read-Write-Lock Pattern,三人成虎,一人打虎!

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

鐵人賽 Software Development DAY 5

技術 Day5. 介面隔離原則

本文同步更新於blog Interface Segregation Principle (ISP) No client should be forced t...

技術 Day42. 範例:仿真Git (備忘錄模式)

本文同步更新於blog 情境:讓我們利用備忘錄模式,實作一個仿真Git 首先定義Commit <?php namespace App\Me...

鐵人賽 Modern Web DAY 8

技術 Day 08 - Design System x 實作 — Color System

今天是這系列第一次碰 Code,要來介紹三種 Color System 在專案中實作的方式,但實現方式絕對不只這三種,這邊只是提供個參考或概念給大家! 這三種...

鐵人賽 Software Development DAY 8

技術 Day8. 簡單工廠模式

本文同步更新於blog Simple Factory Pattern 又稱為靜態工廠,傳入不同的參數以取得不同的類別物件。 簡單工廠模式會將類別分為兩類:...

鐵人賽 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 2
Hey! Go Design Patterns 系列 第 2

技術 DAY 2:Single Threaded Execution Pattern,門就只有一個大家好好排隊啊~

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

技術 Day37. 原型模式

本文同步更新於blog Prototype Pattern 當創建實例的過程很昂貴或複雜時,透過拷貝這些原型來建立新的實例。 原型模式中會將類別分為兩類:...

技術 Day39. 建造者模式

本文同步更新於blog Builder Pattern 將複雜對象的構建與其表示分離。 建造者模式會將類別分為三類:分別是指揮者類別 (Director)...

鐵人賽 Software Development DAY 23

技術 [Day23] 命令模式 | Command Pattern

文同步分享於個人blog 定義 The Command Pattern encapsulates a request as an object, the...

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

技術 DAY 13:UML Class diagrams,在抽象世界的具現化寶石

2023/04/05 更新: 為了避免本文章散落在不同網站,之後統一由部落格更新,再麻煩從部落格查看~ 在 DAY 1 ~ DAY 12 已經介紹了我認知常...

鐵人賽 Software Development DAY 25

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

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

鐵人賽 Software Development DAY 17

技術 [Day17] 组合模式 | Composite Pattern

本文同步分享於個人blog 定義 物件以樹狀結構組合,做為表現出整體-部分的階層關係。 Composite Pattern使得使用者對單個物件和組合物...

鐵人賽 生成式 AI DAY 17

技術 【Day 17】- 多代理系統設計: 監督者模式的應用與實踐

摘要這篇文章探討了多代理系統設計中監督者模式的應用和實踐。文章首先回顧了多代理系統的基本概念和協作模式,接著介紹了監督者模式的特性,並以台灣棒球和啦啦隊新聞處...

技術 Day38. 範例:三隻小豬 (原型模式)

本文同步更新於blog 情境:三隻小豬想要蓋房子 首先是牆壁,可以選擇不同的建材 <?php namespace App\Prototype...

鐵人賽 Software Development DAY 20

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

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

鐵人賽 Modern Web DAY 9

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

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

鐵人賽 Software Development DAY 27

技術 IT鐵人DAY 27-Visitor 訪問者模式

  今天要認識的Design Pattern我覺得比較難,但我會盡量以簡單的方法讓大家了解 Visitor Pattern是如何運作的,現在就來學習一下吧!...

鐵人賽 Software Development DAY 13

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

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

技術 Day50. 範例:十二生肖

本文同步更新於blog 情境:玉皇大帝要舉辦渡河比賽,動物選手各顯神通。 <?php namespace App\BridgePattern\...

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

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

技術 Day46. 範例:摩斯電碼 (解譯器模式)

本文同步更新於blog 情境:讓我們試著作一個摩斯電碼機,它會將一般句子轉成摩斯電碼的表示 首先是語境類別 (Context) <?php...

技術 [PoEAA] Domain Logic Pattern - Service Layer

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

技術 Day35. 代理模式

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