iT邦幫忙

design pattern相關文章
共有 395 則文章
鐵人賽 自我挑戰組 DAY 1
初探設計模式 系列 第 1

達標好文 技術 [ Day 1 ] 我為什麼想學設計模式 ( Design Pattern )

前言 我目前是android工程師,中途轉職開發軟體有一年左右的時間,雖然工作了也不算短的時間,不過很多時候是找google複製貼上別人的code,或是找現有...

鐵人賽 自我挑戰組 DAY 2
初探設計模式 系列 第 2

技術 [ Day 2 ] 初探設計模式 - 工廠方法模式 (Factory Method Pattern)

前言 今天才算是正式進入鐵人賽啦~果然要在工作中還每天生出一篇文章是需要意志力的...今天研討會被講者們轟炸(推銷?)了整天,頭真是有點昏,但是鐵人賽的大家都還...

鐵人賽 Software Development DAY 7

技術 Day7. UML類別圖說明

本文同步更新於blog Class Diagram Class diagram describes the structure of a system by...

鐵人賽 Software Development DAY 26

技術 【DAY26】Mediator模式 - 瞭解通訊軟體如何去發送訊息

大家在日常生活中應該常常用「Line」去聯絡吧!今天要介紹的 Mediator 模式就是 Line 應用的模板,當我們在互相聊天時,發送出去的訊息都會透過 Li...

鐵人賽 Software Development DAY 4

達標好文 技術 【DAY4】UML (統一建模語言)

UML是一種建立程式模型的圖形語言,可以想像成是帶有語意的圖形記號,圖可以分成兩大類,一種是表達結構用的圖,而另一種是表達行為用的圖形,所有分類如下圖所示。...

技術 【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),可是我們最後只完成了27個...

鐵人賽 Software Development DAY 18

技術 【DAY18】Observer模式 - 訂閱你喜好的Youtuber!

各位應該都有在 Youtube 看過影片的經驗吧!如果想要看到影片,可以直接在 Youtube 上面搜尋關鍵字,或者在各別 Youtuber 的頻道中看到他們的...

鐵人賽 Software Development DAY 24

技術 【DAY24】Proxy模式 - 找個代理人來幫忙你吧!

Proxy 字面上是「代理」的意思,意味著當我們要做去做一些事情前,會先透過代理的這一層,之後才交給真正的物件做處理。我們在現實生活中,就有蠻多會遇到 Prox...

鐵人賽 Software Development DAY 23

技術 【DAY23】Flyweight模式 - 共享的意義

Flyweight模式又稱享元模式,顧名思義就是共享元件,它使用物件用來儘可能減少記憶體使用量,於相似物件中分享儘可能多的資訊。我們第19天的Object Po...

鐵人賽 Software Development DAY 25

技術 【DAY25】Memento模式 - 無限生命值的秘訣!

今天要介紹的模式是 Memento ,簡單來說就是備忘錄的概念,也可以想像成用來記錄之前狀態的一個模式,透過 Memento 模式可以將狀態做儲存,如果未來有需...

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

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

鐵人賽 Software Development DAY 13

技術 【DAY13】淺談設計模式的原則與策略

今天我們要來談談設計模式的原則與策略,理解設計模式本質機制和它們背後的原則概念。當累積這些知識後,即使在未來寫程式時,還沒有發現設計模式的情況下,也能夠知道該怎...

鐵人賽 Software Development DAY 27

技術 【DAY27】Chain of Responsibility模式 - 排程的背後原理

最近公司專案有用到「Airflow」來去做排程的處理,剛好跟我們今天要介紹的模式一樣,當我們有一個需求是希望一個工作結束後,會去呼叫另一個工作去執行,像這樣一個...

鐵人賽 Software Development DAY 10

技術 【DAY10】Bridge模式 - 矛盾的解釋

讓我們沿用上一篇轉接頭的例子,在之前我們都一直是以「螢幕」作為一端去跟電腦做連線,假設現在我們把範圍擴大,將螢幕做分類,可能有不同規格類型的螢幕會需要跟電腦做連...

鐵人賽 Software Development DAY 28

技術 【DAY28】Iterator模式 - 無限輪迴的究極奧秘!

今天要介紹的是 Iterator 模式,我們就直接用例子來解釋,假設到了一間餐廳,服務員會來做接待,並且將菜單拿出來,服務員會將上面的菜色都先唸過一遍給客人知道...

達標好文 技術 【財政部查詢類電子發票API】框架解說 C#

小弟之前有分享過串接【財政部查詢類電子發票API】小框架使用文 使用文連結 快速使用財政部電子發票API 使用 C#串接文件下載 電子發票查詢API 1.4.4...

鐵人賽 Software Development DAY 2

技術 【DAY2】什麼是物件導向範型?(上)

範型定義 範型(paradigm),即為典型範例 - 標準結構化程式設計比較異同的方式,可以想像成一種程式設計風格。常見的範型還有:函數式程式設計、指令式程式設...

鐵人賽 Software Development DAY 7

技術 IT鐵人DAY 7-Class Diagram類別圖

  學習Pattern之前,首先要學會看Class Diagram,以了解Pattern中物件與物件之間的關係是什麼,並且能快速套用Pattern在自己設計的D...

鐵人賽 Software Development DAY 29

技術 【DAY29】State模式 - 升級成黃金會員的最後一哩路

終於來到第29天了!今天要介紹的也是這個系列中的最後一個模式,State 模式,我們就直接看範例吧,假設今天有個會員制度,當你存入銀行的錢有超過指定的標準,就會...

鐵人賽 Software Development DAY 30

技術 【DAY30】設計模式回顧 - 三十天總結

終於來到第30天,真的是太感動了,沒想到可以完成這一系列設計模式的介紹,最後我們就來回顧一下之前介紹各個模式時的一些要點以及總結。 物件導向原則的總結 在討論設...

鐵人賽 Software Development DAY 1

技術 【DAY1】初心者前言

這是第一次參加IT鐵人賽,也是我剛入軟體業的第一年,對於物件導向以及程式架構也都還是懵懵懂懂,所以希望能夠藉由這次的參賽,讓我對於 OOP & Desi...

鐵人賽 Software Development DAY 3

技術 【DAY3】什麼是物件導向範型?(下)

讓我們延續上一篇的例子~ 學生不僅僅是學生 假設現在的學生不僅僅是一般大學生了,還包含研究生,現在要他們交作業,但不同類型的學生要交的作業不同,做的事情也不一樣...

鐵人賽 Software Development DAY 22

技術 【DAY22】Composite模式 - 從種子到大樹的過程

今天我們長話短說,Composite模式主要是希望可以透過同樣的型式對每個物件做操作,並且在操控的物件中是有保持著一種層級關係。以今天的例子來說,我想要只透過一...

鐵人賽 Software Development DAY 24

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

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

鐵人賽 Software Development DAY 1

達標好文 技術 [Design Pattern] Introduction

學習設計模式的方式 買(借)本好書 初步了解設計模式 (先有概念) 模仿及練習書上範例 重新再讀一次 以實務需求思考及實作 參考別人經驗 設計模式最有趣的地...

鐵人賽 Software Development DAY 5

技術 【DAY5】學設計模式,WHY?

前面幾天提到物件導向範型以及基礎的UML圖,相信大家應該對物件導向有基本的認識了,所以話說回來,為什麼我們要學習設計模式(Design Pattern)呢? 來...

鐵人賽 Software Development DAY 6

技術 【DAY6】Facade模式 - 今晚...我想來點麥當勞(上)

今晚…我想來點…麥當勞 大家應該都有去麥當勞點餐過的經驗,如果今天我想來個二號餐(雙層牛肉吉士堡),不可能走進去跟做薯條的人說我要一份薯條,再去漢堡區說我要一份...

鐵人賽 Software Development DAY 7

技術 【DAY7】Adapter模式 - 外接螢幕的故事

外接螢幕的故事 之前疫情嚴重時有居家工作一段時間,而公司的筆電是14吋,在家的話想當然就是要爽爽外接大螢幕嘛(竊笑)!於是我就跑去賣場買了一台27吋的螢幕,配合...

鐵人賽 Software Development DAY 9

技術 【DAY9】Strategy模式 - 強化我的轉接器

我們在昨天有留下一個問題,假設今天變成是 AVG的外接口想要去轉成 HDMI,那是不是就要再多一個 AvgToHdmiAdapter 的類別出來並且一樣去繼承...