外接螢幕的故事 之前疫情嚴重時有居家工作一段時間,而公司的筆電是14吋,在家的話想當然就是要爽爽外接大螢幕嘛(竊笑)!於是我就跑去賣場買了一台27吋的螢幕,配合...
我們在昨天有留下一個問題,假設今天變成是 AVG的外接口想要去轉成 HDMI,那是不是就要再多一個 AvgToHdmiAdapter 的類別出來並且一樣去繼承...
之前大學時期曾經短暫的在飲料店打過工,想說體驗一下不同的工作,那時候也是我體重的巔峰,因為每天都可以喝飲料,只要在店裡,基本上所有的飲料都可以喝,而且想要加什麼...
今天介紹的是工廠模式,因為會跟明天的 Abstract Factory 有點關係,所以先來說一下,這個工廠模式,相對我們前幾天談到的其他模式都還要單純很多,也很...
前面兩天有提到 Facade 和 Adapter 兩種設計模式,裡面的範例程式碼內容基本上是環繞在三個物件導向中的基礎概念:物件、封裝、抽象類別。今天的主要目的...
開始看 Design Patterns/Architectural Patterns 之前,我們先來建立一些基本知識。 SOLID 原則 物件導向的世界中,有所...
什麼是Factory Method? Factory Method 工廠方法是一種創建型設計模式:Superclass 先粗略定義 Object 的創建方法,但...
昨天提到,可以用Singleton模式,讓實體永遠只會建立一次。但如果現在是在多執行序的環境下,會發生什麼事呢? 第一個執行緒檢查實體是否存在。因為實體不存在...
Mediator 介紹 Mediator Pattern 是一個非常貼近現實生活應用的一個設計模式,小從傳訊息跟朋友聊天,大到聯合國協調國際衝突,只要有中間人、...
延續昨天的例子,我們在製作飲料的過程中,其實整體步驟都是蠻相像的,不外乎就是先煮沸水,加入茶葉煮成茶,加入冰塊以及配料,最後封膜打包給客人,這一系列的流程很類似...
我們在 DAY6 有用麥當勞的例子來介紹 Facade模式,今天我們再用麥當勞來舉例。假設今天到了麥當勞櫃台,我們不點套餐了,就是單點(雖然比較貴XD),而店員...
再延續昨天的例子,今天的我終於下定決心要減肥了,我規定我一天只能喝一杯奶茶,所以如果去買奶茶的話,店員只會給我一杯,如果再要第二杯,店員只會把剛剛做好的第一杯再...
今天要介紹的 Pattern 是 Template Pattern。個人覺得在 Design Patterns 中,Template Pattern 大概是數一...
在功能穩定後,你對程式碼還有要求嗎? 「沒有最好的程式,只有更好的程式。」在完成功能後 Code Review 是非常重要的事情;不只看自己的程式碼,也要多...
今天要介紹的 pattern 是 Strategy Pattern。跟昨天的 Template Pattern 一樣,個人覺得在 design patterns...
[Design Pattern] Flyweight 輕量模式 今天要介紹的 design pattern 是 Flyweight 輕量模式,又稱作享元模式—沒...
[Design Pattern] Prototype 原型模式 在很多編輯軟體中都有複製這個功能,例如 Google Slides 的複製投影片,或是 PicC...
PicCollage 的員工大概可以分成兩類:Regular Memnber(正職)與 Intern(實習生)。 每個員工會輪流當 weekie(週值日生),負...
今天要和大家介紹 Observer Pattern,又稱作 Publish-Subscribe Pattern。簡單來說,Observer Pattern 就是...
這是一個介紹設計模式 Design Patterns 與架構模式 Architectural Patterns 的系列文章。 什麼?又是 Design Patt...
還記得小時後唸書的座號嗎?老師點名的時候通常會從一號點到最後一號,不會故意從最後一號開始,也不會跳著點。但是有一種情況例外:就是那個座號的學生今天剛好請假或是轉...
有一天艾倫正在開發「超級約翰」這款遊戲,這是一個橫向捲軸遊戲,主角可以透過跳躍來踩死敵人,關卡的目標就是一路過關斬將並將最後的旗子升起來。艾倫正在開發最重要的跳...
小心設計模式別亂用 介紹 設計模式就是過去的人,根據常見的軟體設計的問題,提出的解決方案。設計模式總共有23種,根據情境分成三大類型,建立型、結構型、行為型。...
單例模式 Singleton Pattern 單例模式,整個應用程式只會有一個實體,這個實體不會重複建立,就有點像是整座島上只有一個曹賣,這個曹賣在你這座島的...
禮拜四的凌晨,台北的天空霧濛濛的,彷彿預告著明天的壞天氣還有等不到週末的壞心情。 不過珍妮可不在意這些,今天是她重要的日子。 珍妮要灑錢打造屬於自己的一輛車,順...
本系列文章已出版實體書籍:「你的地圖會說話?WebGIS 與 JavaScript 的情感交織」(博碩文化)WebGIS啟蒙首選✖五家地圖API✖近百個程式範...
在不違反封裝性的前提下,捕捉物件的內部狀態並存在外面,以便日後回復至此一狀態。 (取自 物件導向設計模式−可再利用物件導向軟體之要素) 一個玩遊戲打魔王的回...
今天要介紹的是 Intepreter,它是一種 Behavior Pattern。這個 Pattern 的目的是要用來解釋已經被定義的文法,將一段敘述轉換成表示...
在閱讀經典書籍《設計模式 Design Patterns》中,如果你跳過第 1 章引言,那你可能就錯過了設計模式的核心概念了!作者在引言中花了大篇幅講解 介面...
設計模式的種類 今天來介紹設計模式有哪些以及分類! 目前設計模式有23種,根據他們的使用目的、複雜度、架構可以區分為三類(來自GoF的分類): Creati...