中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

做單本小說(shuō)網(wǎng)站怎么樣線上宣傳方案

做單本小說(shuō)網(wǎng)站怎么樣,線上宣傳方案,百度搜索廣告投放,.php是什么網(wǎng)站迪米特法則:Law of Demeter, LoD, 最少知識(shí)原則LKP 如果兩個(gè)軟件實(shí)體無(wú)須直接通信,那么就不應(yīng)當(dāng)發(fā)生直接的相互調(diào)用,可以通過(guò)第三方轉(zhuǎn)發(fā)該調(diào)用。其目的是降低類之間的耦合度,提高模塊的相對(duì)獨(dú)立性。 所以,在運(yùn)用迪米特…

迪米特法則:Law of Demeter, LoD, 最少知識(shí)原則LKP
如果兩個(gè)軟件實(shí)體無(wú)須直接通信,那么就不應(yīng)當(dāng)發(fā)生直接的相互調(diào)用,可以通過(guò)第三方轉(zhuǎn)發(fā)該調(diào)用。其目的是降低類之間的耦合度,提高模塊的相對(duì)獨(dú)立性。
所以,在運(yùn)用迪米特法則時(shí)要注意以下 6 點(diǎn)。

  • 在類的劃分上,應(yīng)該創(chuàng)建弱耦合的類。類與類之間的耦合越弱,就越有利于實(shí)現(xiàn)可復(fù)用的目標(biāo)。
  • 在類的結(jié)構(gòu)設(shè)計(jì)上,盡量降低類成員的訪問(wèn)權(quán)限。
  • 在類的設(shè)計(jì)上,優(yōu)先考慮將一個(gè)類設(shè)置成不變類。
  • 在對(duì)其他類的引用上,將引用其他對(duì)象的次數(shù)降到最低。
  • 不暴露類的屬性成員,而應(yīng)該提供相應(yīng)的訪問(wèn)器(set 和 get 方法)。
  • 謹(jǐn)慎使用序列化(Serializable)功能。

創(chuàng)建型模式:工廠模式、抽象工廠模式、生成器模式、原型模式、單例模式
結(jié)構(gòu)型模式:適配器、橋接、組合、裝飾器、外觀、享元、代理

單件模式 Singleton Pattern

要求一個(gè)類有且僅有一個(gè)實(shí)例,并提供了一個(gè)全局的訪問(wèn)點(diǎn),在同一時(shí)刻只能被一個(gè)線程所訪問(wèn)。
特點(diǎn):

  1. 單件類只能有一個(gè)實(shí)例;
  2. 單件類必須自身創(chuàng)建唯一實(shí)例;
  3. 單件類必須給所有其他對(duì)象提供唯一實(shí)例。

https://www.cnblogs.com/libingql/archive/2012/12/01/2797532.html

實(shí)現(xiàn)要點(diǎn):

  1. 單件類有一個(gè)私有的無(wú)參構(gòu)造函數(shù),防止被其他類實(shí)例化;
  2. 單件類不能被繼承;
  3. 單件類使用靜態(tài)變量保存單實(shí)例的引用;
  4. 單件類使用公有靜態(tài)方法獲取單一實(shí)例的引用,如果實(shí)例為null則創(chuàng)建一個(gè)。

實(shí)現(xiàn)方式

  1. 使用類的內(nèi)部類(線程安全)推薦
public class Singleton_04 {private static class SingletonHolder {private static Singleton_04 instance = new Singleton_04();}private Singleton_04() {}public static Singleton_04 getInstance() {return SingletonHolder.instance;}
}
  1. 雙重鎖校驗(yàn)(線程安全)
public class Singleton_05 {private static Singleton_05 instance;private Singleton_05() {}public static Singleton_05 getInstance(){if(null != instance) return instance;synchronized (Singleton_05.class){if (null == instance){instance = new Singleton_05();}}return instance;}
}

雙重鎖的方式是方法級(jí)鎖的優(yōu)化,減少了部分獲取實(shí)例的耗時(shí)。

  1. CAS AtomicReference(線程安全)

  2. 枚舉單例

public enum Singleton_07 {INSTANCE;public void test(){System.out.println("hi~");}
}
// 使用:
Singleton_07.INSTANCE.test();

工廠模式

舉例
impl是各自的實(shí)現(xiàn)都繼承了ICommodity接口。StoreFactory中通過(guò)參數(shù)控制調(diào)用不同實(shí)例。
在這里插入圖片描述
在這里插入圖片描述
優(yōu)點(diǎn):

  • 避免創(chuàng)建者與具體的產(chǎn)品邏輯耦合;
  • 滿足單一職責(zé),每個(gè)業(yè)務(wù)邏輯的實(shí)現(xiàn)都在自己所屬的類中完成;
  • 滿足開(kāi)閉原則,無(wú)需更改使用調(diào)用方就可以在程序中引入新的產(chǎn)品類型

缺點(diǎn):
可能會(huì)有非常多的子類 → 應(yīng)使用其他模式進(jìn)行優(yōu)化

抽象工廠模式

抽象工廠是一個(gè)中心工廠,可以創(chuàng)建其他工廠的模式。

抽象工廠模式要解決的問(wèn)題是:在一個(gè)產(chǎn)品族,存在多個(gè)不同類型的產(chǎn)品(Redis集群、操作系統(tǒng))的情況下,如何選擇接口的問(wèn)題。

比如原有一個(gè)單機(jī)Redis,隨著業(yè)務(wù)的發(fā)展,有了更健壯的Redis集群A和B(分別提供不同的接口和方法),需要把Redis升級(jí)但不能影響目前系統(tǒng)的運(yùn)行。
在這里插入圖片描述

建設(shè)者模式

將多個(gè)簡(jiǎn)單對(duì)象一步步地組裝構(gòu)建出一個(gè)復(fù)雜對(duì)象。

將一個(gè)復(fù)雜的構(gòu)建與其表示分離,使得同樣的構(gòu)建過(guò)程可以創(chuàng)建不同的表示。(因?yàn)槊總€(gè)組裝中可以選用不同的原料、元件)

舉例:修改前
在這里插入圖片描述
Matter.java主要保證所有的裝修材料可以按照統(tǒng)一標(biāo)準(zhǔn)進(jìn)行獲取。其他類都實(shí)現(xiàn)了Matter接口。這樣在使用時(shí)需要很多個(gè)if else。修改后:
在這里插入圖片描述
IMenu是接口類,DecorationPackageMenu實(shí)現(xiàn)了IMenu接口,是填充器,
Builder建造者類具體的各種組裝。
在這里插入圖片描述
DecorationPackageMenu類里有一個(gè)List list,一個(gè)price,一個(gè)area,一個(gè)grade(裝修等級(jí))
,所以添加matter(組裝)的同時(shí)可以計(jì)算價(jià)格和面積啥的,也就可以打印單子了。(以往這些是放在各個(gè)類的)。
在這里插入圖片描述
Builder類只是調(diào)用DecorationPackageMenu類中的方法實(shí)現(xiàn)組裝而已。

何時(shí)選擇建造者模式?一些基本物料不變,而其組合經(jīng)常變化時(shí)。

原型模式

原型模式主要解決的問(wèn)題是創(chuàng)建重復(fù)對(duì)象,而這種對(duì)象內(nèi)容本身比較復(fù)雜,生成過(guò)程可能從庫(kù)或RPC接口中獲取數(shù)據(jù)的耗時(shí)較長(zhǎng),因此采用克隆的方式節(jié)省時(shí)間。

舉例:
上機(jī)考試抽題服務(wù)。有問(wèn)答題和選擇題,未來(lái)可能有更多題型。但是題目不能每次都從庫(kù)或者更遠(yuǎn)的地方抽取,因?yàn)槿绻麆?chuàng)建對(duì)象很多的話,會(huì)非常耗時(shí)。

在這里插入圖片描述
QuestionBank(實(shí)現(xiàn)了Cloneable)負(fù)責(zé)將各個(gè)題目進(jìn)行組裝最終輸出試卷,主要包括append()和clone(),clone()里不止復(fù)制,更有亂序功能。Controller就是初始化,以及提供createPaper()。

Cloneable是標(biāo)記型的接口,它們內(nèi)部都沒(méi)有方法和屬性,實(shí)現(xiàn) Cloneable來(lái)表示該對(duì)象能被克隆,能使用Object.clone()方法。如果沒(méi)有實(shí)現(xiàn) Cloneable的類對(duì)象調(diào)用clone()就會(huì)拋出CloneNotSupportedException。

優(yōu)點(diǎn):
便于通過(guò)克隆方式創(chuàng)建復(fù)雜對(duì)象,可以避免重復(fù)做初始化操作,不需要與類中所屬的其他類耦合。

缺點(diǎn):
如果對(duì)象中包括了循環(huán)引用的克隆,以及類中深度使用對(duì)象的克隆,會(huì)使此模式變麻煩。

http://www.risenshineclean.com/news/3506.html

相關(guān)文章:

  • 做博客網(wǎng)站要怎么配置的服四種營(yíng)銷(xiāo)策略
  • 簡(jiǎn)單網(wǎng)站建設(shè)軟件有哪些python培訓(xùn)
  • 海外網(wǎng)站cdn加速下載設(shè)計(jì)好看的網(wǎng)站
  • 關(guān)于網(wǎng)站建設(shè)的幾點(diǎn)體會(huì)搜索率最高的關(guān)鍵詞
  • 做視頻分享網(wǎng)站的參考書(shū)新產(chǎn)品推廣策劃方案
  • 網(wǎng)站開(kāi)發(fā)_超速云怎么做網(wǎng)站宣傳
  • 商城小程序公司無(wú)錫seo公司哪家好
  • 開(kāi)一家網(wǎng)站建設(shè)公司要多少錢(qián)深圳市網(wǎng)絡(luò)營(yíng)銷(xiāo)推廣服務(wù)公司
  • 2018做網(wǎng)站賺錢(qián)不天津seo顧問(wèn)
  • 人才網(wǎng)網(wǎng)站建設(shè)方案中小型企業(yè)網(wǎng)站設(shè)計(jì)與開(kāi)發(fā)
  • 建設(shè)銀行etc信用卡申請(qǐng)網(wǎng)站google官網(wǎng)下載安裝
  • 成都小程序開(kāi)發(fā)外包公司廣告開(kāi)戶南京seo
  • 超市型網(wǎng)站開(kāi)發(fā)企業(yè)微信scrm
  • 做網(wǎng)站廊坊百度網(wǎng)盤(pán)app下載安裝
  • 網(wǎng)站備案許可證號(hào)查詢b2b多平臺(tái)一鍵發(fā)布
  • 企業(yè)網(wǎng)站建設(shè)公司選擇分析免費(fèi)大數(shù)據(jù)查詢
  • 服裝企業(yè)網(wǎng)站建設(shè)現(xiàn)狀微博付費(fèi)推廣有用嗎
  • 長(zhǎng)春做網(wǎng)站企業(yè)重慶網(wǎng)站seo好不好
  • 提供企業(yè)網(wǎng)站建設(shè)怎樣才能在百度上發(fā)布信息
  • 江西九江網(wǎng)站建設(shè)營(yíng)銷(xiāo)型網(wǎng)站制作
  • 大鵬附近網(wǎng)站建設(shè)seo關(guān)鍵詞優(yōu)化軟件app
  • 做網(wǎng)站首頁(yè)的軟件百度一下網(wǎng)頁(yè)
  • 外文網(wǎng)站建設(shè)完成如何自建網(wǎng)站?
  • 合肥大型網(wǎng)站制作公司百度賬號(hào)官網(wǎng)
  • 網(wǎng)站做輪播圖的意義深圳網(wǎng)頁(yè)設(shè)計(jì)公司
  • 網(wǎng)站開(kāi)發(fā)工程師中級(jí)高級(jí)星沙網(wǎng)站優(yōu)化seo
  • 參與賭博網(wǎng)站建設(shè)可判幾年微信推廣鏈接怎么制作
  • 微信商城網(wǎng)站建設(shè)app推廣策略
  • 北京外包公司 網(wǎng)站開(kāi)發(fā)自助建站系統(tǒng)模板
  • 建設(shè)銀行網(wǎng)站功能介紹百度的seo關(guān)鍵詞優(yōu)化怎么弄