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

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

PHP 數(shù)據(jù)庫 ORM 實(shí)現(xiàn)的必要性

PHP 數(shù)據(jù)庫 ORM 實(shí)現(xiàn)的必要性

胡子哥哥 2019-04-10 20:49:25
其實(shí)并不抵觸學(xué)習(xí)新東西和一些“高大上”的概念,但我一直以來最關(guān)心的只有一點(diǎn):我的項(xiàng)目中能不能用到,這東西有什么用,好處是什么,代價是什么?網(wǎng)上很多都說面向?qū)ο蟮臄?shù)據(jù)庫操作方式可以將Model層直接解耦,不需要關(guān)心它是怎么實(shí)現(xiàn)的,而且可以使用OOP的方式,如getXXX()來獲取記錄的某個字段值。其實(shí)我一直想做一個游記的網(wǎng)站(類似百度旅游/馬蜂窩),目錄結(jié)構(gòu)也在http://segmentfault.com/q/1010000002890348提出了,中途也因?yàn)榭催^很多IoC的文章很是頭疼,發(fā)現(xiàn)礙于項(xiàng)目規(guī)模很難體現(xiàn)出它的優(yōu)勢,反而是加重負(fù)擔(dān)為了設(shè)計而設(shè)計。分層已經(jīng)使得action盡量精簡,而且Model也可以做到不錯的復(fù)用。1、實(shí)在不知道為什么越來越多使用ORM呢?是因?yàn)槊嫦驅(qū)ο缶幊痰男枰ㄌ\統(tǒng)了)?還是說我的查詢結(jié)果對象可以緩存?如果網(wǎng)站訪問量大了,是不是把查詢結(jié)果以對象形式緩存才是最終的解決辦法?基于KV的noSQL是不是也可以替代?那數(shù)據(jù)庫自身的緩存呢?2、其實(shí)解耦真不是最關(guān)心的問題(自認(rèn)為還沒達(dá)到要解耦的地步,上面的分層帶來的復(fù)用性已經(jīng)蠻不錯了),ORM的builder看著也是醉了,不如直接Model里寫SQL語句來的痛快,將來換數(shù)據(jù)庫直接重寫(不擔(dān)心這個問題,不差這個時間),感覺性能和復(fù)用一直有點(diǎn)點(diǎn)的相悖,那拋開復(fù)用性和解耦的需求,如果要用ORM是不是就是因?yàn)閷ο缶彺娴氖找妫?、還有之前公司大哥說不要用join,直接嵌套查詢,我說那不是假設(shè)文章頁15篇文章上面有作者信息,我就要跑15趟post表,中途再跑15趟user表?他說查詢結(jié)果可以緩存,不太明白這個緩存是數(shù)據(jù)庫級別的還是Model對象級別的?不一一評論了,謝謝大家的回答!
查看完整描述

2 回答

?
白衣染霜花

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超10個贊

如果你有10個甚至5個小伙伴一起寫SQL,今天這個人JOIN了3個表明天那個人寫了子查詢,后天另一個人批量updatewhere條件拼錯,然后平均每天都有3次因?yàn)樽侄蚊謱戝e導(dǎo)致的bug,你就知道ORM的寶貴了
                            
查看完整回答
反對 回復(fù) 2019-04-10
?
12345678_0001

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個贊

Don'tfallinthetrapofprematureoptimalization
找到瓶頸制約。才是關(guān)鍵。不要糾結(jié)于某一部分的效率。
                            
查看完整回答
反對 回復(fù) 2019-04-10
  • 2 回答
  • 0 關(guān)注
  • 403 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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