標籤: JavaScript

0

Decorator_Pattern

做武器系統今天想模仿暗黑破壞神的武器系統那樣 利用前綴詞為武器加上能力。D2魔法前綴詞表 首先我先建立一個基礎類別,然後各種武器(刀、劍、斧 等等)繼承於它。 12345678910export abstract class BaseWeapon { private name: string; private attackPower: number; construct

0

Strtegy Pattern

小故事劉備去東吳招親前,諸葛亮預測東吳會刁難劉備,甚至吞掉荊州西川,因此諸葛亮特授予趙雲三個錦囊,說是按照天機拆開解決棘手問題。 三個妙計是: 找喬國老幫忙(走後門) 求吳國太放行(訴苦) 孫夫人斷後(親情攻擊) 這三個妙計都是告訴照雲要怎麼去執行,也就是說三個計謀都有一個方法是”執行“。具體執行什麼內容,每個妙計會有所不同。 類別圖 : 12345678910111213interfac

0

Factory Pattern Cont’d

Simple Factory Method (簡單工廠模式)也稱為靜態工廠模式,去掉了抽象工廠類別,簡單實現,但缺點 工廠類的擴展就困難了,會不符合開閉原則。 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354interface Human {

0

Factory Pattern

12345678910111213141516171819202122232425262728293031/* 定義人類與人種 */interface Human { // 取得膚色 getColor(): void; //說話 talk() : void;}class BlackHuman implements Human{ publ

0

Rx and Pormise

Reactive Programing (響應式編程)Def : 一種面向(data flow)數據流和(propagation of change)變化傳播的編程風格。 propagation of change 變化傳播最初的資料是否會隨著後續對應變量的變化而變化。 在inperative programming中A+B=C 2+3=52+4=5 not 6當B的資料發生改變之後,C的

0

JS Clean Code訓練營

12345678910111213第一天 :有效的单元测试识别依赖隔离依赖前端逻辑的常见剥离方式Stub与Mock处理Callback和Promise第二天 : 小步重构识别代码臭味处理代码臭味的技巧良好设计的基本原则消除重复,降低复杂度 Day1 :Lesson 1:1 .FizzBuzz 數學歸納法: n =1 => n+1 ok一個it test, 通常證明2個test case

0

State Pattern

實作電梯電梯的動作: 開門、關門、運行、停止 123456789101112interface ILift { open(): void; close(): void; run(): void; stop(): void}class Lift implements ILift { public open = () => consol