1. 構造器模式
//constructor es5
function
student
(name, gender, score)
}student.prototype.
sumscore
=function()
//使用原型繫結事件
var lidan =
newstudent
('李誕'
,'男',65
);consle.
log(lidan.name,lidan.sumscore)
;//constructor es6
class
student
sumscore()
}var lidan =
newstudent
('李誕'
,'男',65
);consle.
log(lidan.name,lidan.sumscore)
;
2. 構建者模式//es5
//constructor es5
function
student()
function
studentbuilder()
studentbuilder.prototype.
setname
=function
(name)
studentbuilder.prototype.
setgender
=function
(gender)
studentbuilder.prototype.
sethairlength
=function
(hairlength)
studentbuilder.prototype.
build
=function()
var lidan =
newstudentbuilder()
;lidan.
setname
('李誕');
lidan.
setgender
('男');
lidan.
sethairlength(2
);lidan.
build()
;//es6
//constructor es6
class
student()
class
studentbuilder()
setname
(name)
setgender
(gender)
sethairlength
(hairlength)
build()
}const lidan =
newstudentbuilder()
;lidan.
setname
('李誕');
lidan.
setgender
('男');
lidan.
sethairlength(2
);lidan.
build()
;
3. 工廠模式//es5
function
student
(name, subjects)
//var lidan = new student('李誕', ['政治', '歷史', '地理']);
/** * 建立學生
* @param name 姓名
* @param type 文科還是理科
* @return
*/function
factory
(name, type)
}var lidan =
factory
('李誕'
,'文科'
);
4. 抽象工廠模式function
student
(name)
function
teacher
(name)
function
studentfactory()
function
teache***ctory()
/** * 選擇工廠
* @param factory
* @return
*/function
userproducer
(factory)
}var factory =
userproducer
('student');
var lidan =
factory
('李誕');
//var lidan = userproducer('student')('李誕');
console.
log(lidan)
5. 單例模式function
resource()
else
}var r1 =
newresource()
;console.
log(r1.balance)
;r1.balance =50;
console.
log(r1.balance)
;var r2 =
newresource()
;console.
log(r2.balance)
;r1.balance =55;
console.
log(r2.balance)
;
程式設計思想
pop面向過程的程式設計思想把電腦程式看作是一組命令的集合,即一組函式的順序執行。面向過程設計時,將整個程式切分成幾個函式模組,每乙個模組負責解決乙個問題。oop把物件作為程式的基本單元,乙個物件包含了資料和運算元據的方法 method 物件導向的程式設計把電腦程式視為一組物件的集合,每個物件都可以...
traits程式設計思想
首先引用書上的一句話 stl中心思想是把資料容器和演算法分開。迭代器是兩者結合的關鍵,那麼我們演算法當然是通過迭代器來對容器操作了,但是我們在演算法中經常需要得到迭代器的相應型別 比如 迭代器說指向的型別。那麼怎麼得到這些型別呢,當然你可以通過函式模板實現部分功能,也可以通過在迭代器裡自定義這些型別...
AOP程式設計思想
面向切面程式設計 這是最近接觸到的思想。看名字感覺很新奇,其實就是在底層實現攔截呼叫。通俗點,如果你不小心踩到狗屎,心理不平衡時,你可以在人人都會走過的路上放一坨狗屎,這樣,路過的人都會踩到狗屎。這樣你就實現了面向切面程式設計 個人理解 關鍵字 切面,攔截。用途 操作日誌,許可權驗證等。老規矩介面先...