iT邦幫忙

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

技術 物件導向程式設計 : 里氏替換原則(LSP)

里氏替換原則(Liskov Substitution principle) 網路上有很多文章與範例在解釋6大原則, 但是還是很難只看一篇就能了解。 一言以蔽之...

技術 物件導向程式設計 : 開閉原則(OCP)

開閉原則 The Open/Closed Principle (OCP) 開閉原則規定「軟體中的對象(類,模塊,函數等等)應該對於擴展是開放的,但是對於修改是...

技術 IOC(控制反轉) , DI(依賴注入) 深入淺出~~

IOC是一個oop重要的程式設計思想。 此文帶著大家初探 IOC(控制反轉) , DI(依賴注入) ~~ 案例解釋: 小明是個愛乾淨的人,但他工作時常加班導致...

技術 【C#】裝飾者模式(Decorator Pattern)

裝飾者模式是一個很精美且優雅的模式 本篇範例 文字內容->AES加密->Zip檔附加密碼->輸出儲存 情境 有個需求要做 文字內容-&gt...

技術 【C#】 AOP輕型框架 AwesomeProxy.Net 介紹使用

今天和大家分享AwesomeProxy.Net小弟開源AOP輕型框架 簡單介紹 AOP (Aspect-Oriented Programming) AOP 是...

鐵人賽 Software Development DAY 30

技術 [Design Pattern] Retrospective 回顧

Retrospective 回顧 JB: 呼! 終於到尾聲啦! 可是...我們原本預期這30天可以完成30個需求(User Story),可是我們最後只完成了2...

鐵人賽 Software Development DAY 29

技術 [Design Pattern實例] 使用單例模式實做線性分配器(2/2)

使用單例模式實做線性分配器(2/2) 延續Day28.使用單例模式實做線性分配器(1/2)的需求, 我們接下來要開始實作取號的方法。 Sample Codes...

鐵人賽 Software Development DAY 28

技術 [Design Pattern實例] 使用單例模式實做線性分配器(1/2)

使用單例模式實做線性分配器(1/2) 線性分配器(Linear Block Allocator)與高低位分配器(Hi/Lo allocator)皆是在不需要頻繁...

鐵人賽 Software Development DAY 27

技術 [Design Pattern實例] 在ASP.NET Core利用狀態模式來製造View Model

在ASP.NET Core利用狀態模式來製造View Model Scenario 我們在Day26時,利用了建造者模式來製造View Model。 在這個例子...

鐵人賽 Software Development DAY 26

技術 [Design Pattern實例] 在ASP.NET Core利用建造者模式來製造View Model

在ASP.NET Core利用建造者模式來製造View Model Scenario 專案中需要在MVC同一個VIEW上動態依照後端提供的每種產品規格(View...

鐵人賽 Software Development DAY 25

技術 [Design Pattern實例] 在策略模式使用委派解耦合

在策略模式使用委派解耦合 我們在先前的文章已用實例來說明GOF的 Creational design patterns Structural design p...

鐵人賽 Software Development DAY 24

技術 別再因為發號碼牌重複被客訴! (Singleton 單例模式)

Singleton 單例模式 僅將此篇文章獻給我的摯友、導師,Charles,此篇文章參考了大部分他的知識和文章,原文:程湘之間 需求描述 Amy(PO):...

鐵人賽 Software Development DAY 23

技術 察言觀色! 敵不動,我不動! (Observer 觀察者模式)

Observer 觀察者模式 定義 定義對象之間的一對多依賴關係,當一個對象更改狀態時,會自動通知並更新其所有依賴的對象。(WIKI) UML Obse...

鐵人賽 Software Development DAY 22

技術 讓你當一天艾森豪,來指揮諾曼地登陸作戰! (Command 命令模式)

Command 命令模式 1944年,在第二次世界大戰中,同盟國聯軍進攻歐洲北部-法國諾曼第地區的登陸戰役,代號Operation Overlord。這次作戰...

鐵人賽 Software Development DAY 21

技術 你每天在用,但是可能不知道的... (Iterator 迭代器模式)

Iterator 迭代器模式 需求描述 Amy(PO): As a 電商老闆 I want 舉辦行銷活動,購物車結帳時: 書籍雜誌:會員相同類別10本以上八...

鐵人賽 Software Development DAY 20

技術 優惠方案每天變! 購物車怎麼結帳才不會算到手抽筋? (Visitor 訪問者模式)

Visitor 訪問者模式 需求描述 Amy(PO): As a 電商老闆 I want 舉辦行銷活動,購物車結帳時: 書籍雜誌:會員相同類別10本以上八折...

鐵人賽 Software Development DAY 19

技術 別讓老闆和USER再問你好了沒? 隨時更新工作狀態吧! (State 狀態模式)

State 狀態模式 需求描述 Amy(PO): As a 提需求單的使用者 I want 需求單管理系統支援在某個需求的狀態改變時,記錄時間並以Email通...

鐵人賽 Software Development DAY 18

技術 想不起昨天做了什麼? 吃銀杏和記憶口香糖不如試試... (Memento 備忘錄模式)

Memento 備忘錄模式 需求描述 Amy(PO): As a 電子表單使用者 I want 系統可以在我填寫表單時,提供記錄草稿的功能,儲存該張表單後,即...

鐵人賽 Software Development DAY 17

技術 別再孤軍奮戰! 做好做滿第一件事情先找到能調用資源的人! (Mediator 中介者模式)

Mediator 中介者模式 需求描述 Amy(PO): As a 銀行行員 I want 計算客戶評分時,可採用: 各金融商品之評分模型但分別給與權重...

鐵人賽 Software Development DAY 16

技術 一樣米養百種人! (Template Method 樣板方法)

Template Method 樣板方法 中文也稱之為範本方法 需求描述 Amy(PO): As a 銀行交易員 I want 在衍生性金融商品管理系統可...

鐵人賽 Software Development DAY 15

技術 老闆說給客戶的報價要有彈性! 但是只能多算不能少算! (Proxy 代理模式)

Proxy 代理模式 需求描述 Amy(PO): As a 物流部秘書 I want 報價單系統可以在其他服務費加上更多彈性: 加點: 若單趟載超過兩個點,...

鐵人賽 Software Development DAY 14

技術 程式碼也需要瘦身! (Flyweight 享元模式)

Flyweight 享元模式 需求描述 Amy(PO): As a 公司官網管理者 I want 產品頁面可以更快速的顯示(<=2.0Sec) So t...

鐵人賽 Software Development DAY 13

技術 標準永遠有例外! 但是千萬不要以為自己可以改標準... (Decorator 裝飾者模式)

Decorator 裝飾者模式 需求描述 Amy(PO): As a 物流部秘書 I want 報價單系統可以在標準運費上加上其他服務費:加點/假日運送/延遲...

鐵人賽 Software Development DAY 12

技術 老闆最大的興趣:異動組織! 但是下個月又調回來了... (Composite 組合模式)

今天挑選Composite模式來度過2017年最後一天! 祝福IT邦幫忙的大大們新年快樂 :P Composite 組合模式 需求描述 Amy(PO): As...

鐵人賽 Software Development DAY 11

技術 為什麼裝潢師傅做出來的不是我想要的? 你需要... (Builder 建造者模式)

Builder 建造者模式 需求描述 Amy(PO): As a 公司入口網站產品經理 I want 各BU在公司入口網站首頁看到屬於部門之資訊 So tha...

鐵人賽 Software Development DAY 10

技術 收到一筆要建立複製人軍隊的訂單怎麼辦? (Prototype 原型模式)

Prototype 原型模式 需求描述 Amy(PO): As a 系統使用者 I want 降低查詢線上交易報表的回應時間 So that 提高作業效率...

鐵人賽 Software Development DAY 9

技術 DBA說換資料庫的帳號密碼,結果我花了一天改連線資訊$#&@#! (Factory 工廠模式)

Factory 工廠模式 需求描述 Lily(Team member): As a 開發人員 I want 建立一個Interface來讓開發人員建立各資料庫...

鐵人賽 Software Development DAY 8

技術 江湖走跳,轉接頭很重要! (Adapter 適配器模式)

Adapter 適配器模式 需求描述 Amy(PO): As a 資料分析者 I want 系統可以介接XX店家二代卡機傳回來的EDI並整理資料後存放在資料庫...

鐵人賽 Software Development DAY 7

技術 橋來橋去! 以需求大化小,小化無(抽象)為目標! (Bridge 橋接模式)

Bridge 橋接模式 需求描述 Amy(PO): As a 建立訂單的秘書 I want 可以在同一介面上依據各供應商、產品和是否急件列印不同格式的訂單 S...

鐵人賽 Software Development DAY 6

技術 不用看書就會,但不一定會唸的... (Facade 外觀模式)

Facade 外觀模式 Facade 稱為外觀或表面模式,不過比較常聽到英文說法;請聽一下這個單字的念法吧! 需求描述 Amy(PO): As a 資料分...