第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java中構(gòu)建器類的正確命名

java中構(gòu)建器類的正確命名

縹緲止盈 2023-08-04 15:13:35
我有一個 Product 類和 Builder 類,其中一個可以構(gòu)建該產(chǎn)品子類,從數(shù)據(jù)庫獲取數(shù)據(jù),另一個構(gòu)建器可以構(gòu)建該產(chǎn)品,從其他來源獲取數(shù)據(jù)。到目前為止我有一個界面:public interface ProductDao {  Product buildProduct(RetrieveBy by, String s);}具有構(gòu)建選項的枚舉:public enum RetrieveBy {  NAME, TYPE, BRAND}我不知道命名將要實現(xiàn)接口并將構(gòu)建從數(shù)據(jù)庫獲取數(shù)據(jù)的產(chǎn)品的類的最佳方式是什么,以及可以構(gòu)建從其他源(JSON、XML 或?qū)傩晕募┇@取數(shù)據(jù)的產(chǎn)品的其他類)。有人建議我只創(chuàng)建一個類并命名它ProductBuilder,但是,在我看來,這違反了單一責(zé)任原則。
查看完整描述

2 回答

?
HUX布斯

TA貢獻1876條經(jīng)驗 獲得超6個贊

事實是:這里沒有硬性規(guī)則,只有慣例,最重要的是:您的公司/團隊/項目中存在的“先例”。

換句話說:做你周圍其他人所做的事情。

我的個人風(fēng)格:

  • 我會稱該接口ProductBuiler... DAO 意味著“數(shù)據(jù)訪問對象”,該接口與此無關(guān)(直接)

  • 然后我會為該類命名ProductBuilderImpl?;蛘?,如果每個“源”都有一個實現(xiàn),那么簡單地JsonProductBuilder或可能 ProductBuilderForJson.

但正如所說,真正的答案是:不存在規(guī)定名稱的普遍法則。您應(yīng)該使用對您和您的團隊“感覺”好的東西。


查看完整回答
反對 回復(fù) 2023-08-04
?
梵蒂岡之花

TA貢獻1900條經(jīng)驗 獲得超5個贊

我不知道我是否確定您的疑問,但是,DAO 是一個數(shù)據(jù)訪問對象,基本上它將應(yīng)用程序/業(yè)務(wù)層與持久層隔離。

如果您想創(chuàng)建一個構(gòu)建器接口,可能是類似ProductBuilder.java 的接口,以及ProductBuilderImp.java的實現(xiàn)。


查看完整回答
反對 回復(fù) 2023-08-04
  • 2 回答
  • 0 關(guān)注
  • 141 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號