五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

1.3 為什么不能一直做CURD?

2023-05-12 11:59 作者:xlorne  | 我要投稿

什么是CURD?

就是Create Update Read Delete操作,通常是指對(duì)依托對(duì)數(shù)據(jù)庫(kù)的增刪改查,實(shí)現(xiàn)功能開發(fā)的過(guò)程。


代碼實(shí)例



這樣的開發(fā)有什么問(wèn)題?

舉例來(lái)說(shuō):

商品下單,對(duì)應(yīng)的是數(shù)據(jù)庫(kù)中保存了商品的訂單的記錄,視為商品下單成功了

修改訂單的狀態(tài),表現(xiàn)為修改數(shù)據(jù)庫(kù)的狀態(tài)字段。

示例代碼如下

訂單表如下:

這樣開發(fā)有什么問(wèn)題?

1. 業(yè)務(wù)被數(shù)據(jù)庫(kù)所綁架

數(shù)據(jù)庫(kù)的數(shù)據(jù)就是業(yè)務(wù)的結(jié)果,業(yè)務(wù)被數(shù)據(jù)庫(kù)所綁架,調(diào)整數(shù)據(jù)庫(kù)將是在對(duì)業(yè)務(wù)調(diào)整。

在業(yè)務(wù)被數(shù)據(jù)庫(kù)所綁架,并且數(shù)據(jù)庫(kù)表與表還有關(guān)聯(lián),有時(shí)候還有數(shù)據(jù)冗余,大部分程序員在面對(duì)這樣的數(shù)據(jù)庫(kù)設(shè)計(jì)下,都不敢改動(dòng),除非必要,不然不敢動(dòng)。

單元測(cè)試形同虛設(shè)

由于業(yè)務(wù)被數(shù)據(jù)綁架,單元測(cè)試高度依托于數(shù)據(jù)庫(kù),導(dǎo)致單元測(cè)試完全是對(duì)數(shù)據(jù)庫(kù)的測(cè)試了,讓單元測(cè)試失去了其價(jià)值。


單元測(cè)試就是施工的防護(hù)架,沒(méi)有他就很容易讓施工,變成了拆除。

由于業(yè)務(wù)入口遍布各地,系統(tǒng)無(wú)法輕易更改,容易牽一發(fā)而動(dòng)全身

由于dao層的代碼遍布在service層的各處,導(dǎo)致同一個(gè)表的數(shù)據(jù)維護(hù)將會(huì)在項(xiàng)目很多地方出現(xiàn),在缺乏約束的情況下,導(dǎo)致業(yè)務(wù)對(duì)數(shù)據(jù)維護(hù)變的泛濫,讓系統(tǒng)的維護(hù)性大大降低。

舉例來(lái)說(shuō)

修改訂單狀態(tài)的場(chǎng)景:

用戶取消訂單,商家取消訂單,商家確認(rèn)發(fā)貨,用戶確認(rèn)收貨等,這些地方可能都是直接調(diào)用

dao.updateStateById(id,state)的代碼執(zhí)行的。

假如需要增加對(duì)訂單狀態(tài)的統(tǒng)計(jì)功能,你或許需要將上述所有的地方都得修改一遍。

對(duì)于接收項(xiàng)目的人來(lái)說(shuō),輕易不敢修改,搞不好就是一場(chǎng)災(zāi)難。


1.3 為什么不能一直做CURD?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
合作市| 天门市| 呼伦贝尔市| 张掖市| 涡阳县| 漯河市| 拉孜县| 长阳| 大荔县| 乌鲁木齐县| 泸溪县| 巴塘县| 涟源市| 黔东| 霍州市| 乌兰县| 靖西县| 海宁市| 乌鲁木齐县| 罗定市| 龙游县| 高雄市| 永兴县| 静海县| 马尔康县| 兴山县| 大名县| 韶关市| 肥乡县| 始兴县| 岫岩| 灵寿县| 宣汉县| 双辽市| 阳东县| 五家渠市| 彭泽县| 九龙坡区| 东丽区| 上高县| 南宁市|