9、享元模式

1、特點

享元(flyweight)模式是一種用於性能優化的模式,“fly”在這裏是蒼蠅的意思,意爲蠅量級。享元模式的核心是運用共享技術來有效支持大量細粒度的對象。

2、demo

50 種男式內衣和50 種女士內衣,爲了推銷產品,工廠決定生產一些塑料模特來穿上他們的內衣拍成廣告照片

// 50 種男式內衣和50 種女士內衣,爲了推銷產品,工廠決
// 定生產一些塑料模特來穿上他們的內衣拍成廣告照片
var Model = function(sex, underwear) {
    this.sex = sex;
    this.underwear = underwear;
}

Model.prototype.takePhoto = function() {
    console.log('sex=' + this.sex + 'underwear' + this.underwear);
}

var maleModel = new Model('male'),
    femaleModel = new Model('female');

for (var j = 1; j <= 50; j++) {
    femaleModel.underwear = 'underwear' + j;
    femaleModel.takePhoto();
};

var maleModel = new Model('male'),
    femaleModel = new Model('female');

for (var i = 1; i <= 50; i++) {
    maleModel.underwear = 'underwear' + i;
    maleModel.takePhoto();
};

參考文獻:《JavaScript設計模式與開發實踐》

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章