您的位置:首頁(yè) > 軟件教程 > 教程 > 抽象和接口在Java中的優(yōu)化軟件項(xiàng)目中的應(yīng)用

抽象和接口在Java中的優(yōu)化軟件項(xiàng)目中的應(yīng)用

來(lái)源:好特整理 | 時(shí)間:2024-04-24 09:32:04 | 閱讀:147 |  標(biāo)簽: T VA Face AVA v 項(xiàng)目 S C in 應(yīng)用 軟件 AV java inter   | 分享到:

Foreword 抽象和接口是Java中的兩個(gè)關(guān)鍵字,也是兩種最基本的優(yōu)化軟件項(xiàng)目手段。為什么說它們是一種優(yōu)化項(xiàng)目的手段? 人分三六九等,不同等級(jí)的人,所接觸的事和處理的事是不一樣的。同理,項(xiàng)目也分大項(xiàng)目和中項(xiàng)目和小項(xiàng)目,大、中、小項(xiàng)目所承載的目標(biāo)也是不一樣的。 先說小項(xiàng)目,如果你使用Java只是寫

抽象和接口是Java中的兩個(gè)關(guān)鍵字,也是兩種最基本的優(yōu)化軟件項(xiàng)目手段。為什么說它們是一種優(yōu)化項(xiàng)目的手段?

人分三六九等,不同等級(jí)的人,所接觸的事和處理的事是不一樣的。同理,項(xiàng)目也分大項(xiàng)目和中項(xiàng)目和小項(xiàng)目,大、中、小項(xiàng)目所承載的目標(biāo)也是不一樣的。

先說小項(xiàng)目,如果你使用Java只是寫一個(gè)小腳本,比如更新一下系統(tǒng)時(shí)間,自動(dòng)點(diǎn)擊某個(gè)軟件按鈕,修改表格數(shù)據(jù)...類似這樣的功能。對(duì)于這種小項(xiàng)目,項(xiàng)目里無(wú)非三、兩個(gè)功能函數(shù),有個(gè)Main按照順序調(diào)用一下即可,那么這種項(xiàng)目就永遠(yuǎn)都不需要使用到抽象和接口。用了反而是累贅,有畫蛇添足的味道。

但是對(duì)于大項(xiàng)目就不同了,比如一個(gè)大型的電商系統(tǒng),用戶的需求多、使用人群廣、數(shù)據(jù)類型多且需要一定關(guān)聯(lián)度。商品種類多、店鋪的類型各異...,當(dāng)然這些都是在系統(tǒng)設(shè)計(jì)階段的麻煩。在開發(fā)階段的麻煩是,不同項(xiàng)目組的人都做不同的模塊,一個(gè)項(xiàng)目組的人怎么配合也是麻煩,最后數(shù)據(jù)對(duì)接起來(lái)也是麻煩、前后端之間的數(shù)據(jù)對(duì)接...,怎么樣,想想都頭疼了吧。

為什么說有了抽象和接口,能給大型項(xiàng)目帶來(lái)便利、優(yōu)化?

一些前人留下了一些經(jīng)典的設(shè)計(jì)模式,比如單一模式,指在設(shè)計(jì)的時(shí)候要保證類的單一功能,如果完全按照這種模式,那么業(yè)務(wù)的實(shí)現(xiàn)會(huì)變成無(wú)數(shù)個(gè)類,并且代碼間非常耦合,在修改業(yè)務(wù)需求和代碼的時(shí)候,都是一場(chǎng)災(zāi)難。

接口則是解耦的最基本工具,接口允許將方法的定義與其實(shí)現(xiàn)分開,這種分離使得多個(gè)不相關(guān)的類能夠?qū)崿F(xiàn)同一組方法,從而保證了項(xiàng)目中不同部分之間的相互通信。

抽象類非常適合多個(gè)子類共享共同特征和屬性,但也兼容自己獨(dú)有的行為情況,同時(shí)為子類的定制實(shí)現(xiàn)留出空間。

這個(gè)現(xiàn)象讓我想到對(duì)有序數(shù)組的排序:
就類似對(duì)有序數(shù)組進(jìn)行排序,使用冒泡排序和二分查找算法去實(shí)現(xiàn),雖然都能完成這個(gè)效果。但是它們的時(shí)間復(fù)雜度差異也很大,差了一個(gè)數(shù)量級(jí)。

  • 冒泡排序的時(shí)間復(fù)雜度為O(n);
  • 二分查找的時(shí)間復(fù)雜度為O(logn);

同樣的,你不使用抽象和對(duì)象也一樣能實(shí)現(xiàn)大型項(xiàng)目,但是效果不一樣,在管理的復(fù)雜度上也不一樣。

抽象和接口在Java中的優(yōu)化軟件項(xiàng)目中的應(yīng)用

如果說冒泡和二分體現(xiàn)的差異在時(shí)間和空間上。那么設(shè)計(jì)不合理的項(xiàng)目,就體現(xiàn)在在代碼的工作量上。

當(dāng)然,項(xiàng)目中增加了抽象和接口,新人的理解難度也直線上升,這也逼迫這個(gè)項(xiàng)目的程序員都必須得安裝OOP思想,才能上手這種項(xiàng)目。

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點(diǎn)或證實(shí)其描述。

項(xiàng)目 1.0.2.24
項(xiàng)目 1.0.2.24
類型:休閑益智  運(yùn)營(yíng)狀態(tài):正式運(yùn)營(yíng)  語(yǔ)言: 英文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動(dòng)

《項(xiàng)目》(.projekt)是游戲商StampedeGames制作的一款新型簡(jiǎn)約益智游戲。.projekt要求你以不同的方式看

相關(guān)視頻攻略

更多

掃二維碼進(jìn)入好特網(wǎng)手機(jī)版本!

掃二維碼進(jìn)入好特網(wǎng)微信公眾號(hào)!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]

湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2024 haote.com 好特網(wǎng)