偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

充分利用面向?qū)ο笳Z(yǔ)言的接口特性

原創(chuàng)
開發(fā) 開發(fā)工具
接口是面向?qū)ο笳Z(yǔ)言的特點(diǎn)之一。這個(gè)特點(diǎn)源自C++,現(xiàn)在在C#,Java等面向?qū)ο笳Z(yǔ)言中都存在這種方式。然而根據(jù)一個(gè)資深軟件工程咨詢師的調(diào)查,接口還沒有被大多數(shù)開發(fā)人員充分利用。

【51CTO快譯】現(xiàn)代的面向?qū)ο笳Z(yǔ)言源自C++的特點(diǎn)之一是使用接口。一個(gè)接口是一個(gè)類,它沒有具體的實(shí)現(xiàn)過(guò)程,只提供一個(gè)用來(lái)訪問(wèn)其資源的接口。(51CTO編輯:有關(guān)面向?qū)ο笳Z(yǔ)言的更多特點(diǎn),可以參考面向?qū)ο蟮乃季S過(guò)程,以及面向?qū)ο缶幊讨蓄愒O(shè)計(jì)的幾個(gè)原則一文

每個(gè)接口需要用一些具體的類來(lái)實(shí)現(xiàn),但優(yōu)點(diǎn)是,使得實(shí)現(xiàn)細(xì)節(jié)可以可容易地獨(dú)立出來(lái)。因此,你不必同時(shí)擔(dān)心實(shí)現(xiàn)和接口問(wèn)題。

接口可以幫助我不斷建立易于測(cè)試、修改、而且不依賴于具體類的軟件。接口可能不是最***的面向?qū)ο缶幊?,但它在編程、集體的類之上提供了眾多的優(yōu)勢(shì)。

接口是你和你的其他應(yīng)用程序之間的一項(xiàng)合約。該合約由編譯器保證,因此無(wú)法在不改變接口的情況下改變你的類中的服務(wù)。

創(chuàng)建一個(gè)接口可以讓你好好思考你的類需要給客戶提供哪些功能。建立接口的正規(guī)步驟需要你考慮什么是類中必不可少的,什么是可選的。刪除那些并不重要,然后你將擁有一個(gè)堅(jiān)實(shí)的基礎(chǔ)。

◆接口可以混合。所以即使你想要的所有功能并沒有在一個(gè)接口中呈現(xiàn),你也不必?fù)?dān)心。你可以隨時(shí)添加額外的接口,來(lái)為具體用例提供所需的方法。使用接口,在建立新功能時(shí),你不會(huì)覺得像使用具體類那樣受到限制。接口可以隨時(shí)混合和匹配。

接口讓軟件測(cè)試更容易。由于沒有被束縛在具體的實(shí)現(xiàn)過(guò)程上,你可以通過(guò)定義你自己的具體的類,來(lái)自由更改測(cè)試類所使用的代碼。這就會(huì)更加模塊化,測(cè)試結(jié)果更加清晰。

接口的缺點(diǎn)

接口的缺點(diǎn)非常少,唯一主要的缺點(diǎn)是,你需要花費(fèi)一些精力來(lái)維護(hù)一個(gè)獨(dú)立的實(shí)體。但是,現(xiàn)代編程工具使這件事變得很容易,因此它不再像從前那么困難。

使用接口的另一個(gè)需要強(qiáng)調(diào)的方面是,C++中使用虛指針的實(shí)現(xiàn)問(wèn)題。但是,你必須注意,現(xiàn)代面向?qū)ο笳Z(yǔ)言是基于虛擬機(jī)的。這種語(yǔ)言把每種方法描述為一個(gè)虛指針,除非系統(tǒng)決定內(nèi)聯(lián)方法(在這種情況下,不存在實(shí)現(xiàn)問(wèn)題)。除非你有非常重要的軟件(在這種情況下,你可能需要使用的C/ C + +)你不應(yīng)該擔(dān)心這種實(shí)現(xiàn)問(wèn)題,因?yàn)樘摂M機(jī)會(huì)很好地解決這種問(wèn)題。如果對(duì)虛擬機(jī)的概念仍然不很了解,可以參考詳細(xì)介紹什么是Java虛擬機(jī)一文。

結(jié)論

接口是一個(gè)現(xiàn)代化的機(jī)制,用來(lái)改進(jìn)軟件設(shè)計(jì)。盡管這樣,接口還沒有被大多數(shù)開發(fā)人員充分利用。我們應(yīng)該利用接口作為應(yīng)用程序各個(gè)部分之間默認(rèn)的通信方法,只在建立對(duì)象(工廠方法)以及向包中加入類時(shí)使用具體類。

原文:When in Doubt, Create an Interface by Carlos Oliveira

【相關(guān)閱讀】

  1. Java語(yǔ)言中抽象類和接口的區(qū)別
  2. 淺談C#中的接口問(wèn)題
  3. 跟MVP學(xué)C#視頻教程之八 接口
責(zé)任編輯:yangsai 來(lái)源: 51CTO.com
相關(guān)推薦

2013-01-18 14:02:46

VDI存儲(chǔ)IOPS

2010-05-06 12:44:13

Unix系統(tǒng)

2023-10-23 16:11:14

2017-01-04 15:42:43

運(yùn)營(yíng)商SDN服務(wù)保障

2019-06-13 19:20:38

云平臺(tái)遷移云計(jì)算

2024-10-28 15:14:53

2020-08-18 09:03:06

云計(jì)算云存儲(chǔ)數(shù)據(jù)

2015-06-04 09:12:05

云安全

2013-07-25 09:20:32

Windows 8.1

2015-02-26 09:50:42

vSphereSSD

2018-09-04 08:40:41

數(shù)據(jù)中心網(wǎng)絡(luò)機(jī)柜

2013-03-22 10:30:16

IT主管ITM云計(jì)算

2019-05-05 09:26:01

物聯(lián)網(wǎng)安全物聯(lián)網(wǎng)投資物聯(lián)網(wǎng)

2021-02-09 10:55:10

物聯(lián)網(wǎng)人工智能邊緣計(jì)算

2020-06-22 11:59:23

物聯(lián)網(wǎng)構(gòu)建系統(tǒng)IOT

2020-09-28 20:44:44

機(jī)器學(xué)習(xí)開源工具編程語(yǔ)言

2021-03-27 10:53:05

NodeJSCPU服務(wù)器

2019-08-06 09:52:16

網(wǎng)絡(luò)工具數(shù)據(jù)

2023-09-01 11:38:36

2022-09-26 14:42:36

數(shù)據(jù)中心IT 行
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)