今天我想分享一下我自己的ORM框架,雖然談不是很好,但我個(gè)人認(rèn)為還是蠻好用的,跟大家分享交流一下。

首先說(shuō)說(shuō)我對(duì)現(xiàn)在主流的ORM框架的一些看法:

優(yōu)點(diǎn):

  1. 讓程序員不再關(guān)注數(shù)據(jù)庫(kù)細(xì)節(jié),專心在業(yè)務(wù)邏輯上,程序員可以不懂?dāng)?shù)據(jù)庫(kù)就可以開發(fā)系統(tǒng)。

  2. 讓數(shù)據(jù)庫(kù)遷移變的非常方便,如果系統(tǒng)需要更改使用的數(shù)據(jù)庫(kù),直接改配制就好了,不要再管不同數(shù)據(jù)庫(kù)之間的語(yǔ)法差異。

  3. 省時(shí),可快速開發(fā),因?yàn)椴恍枰约簩憦?fù)雜的SQL語(yǔ)句,不需要封裝復(fù)雜的數(shù)據(jù)底層,這樣可以節(jié)省很多時(shí)間。

缺點(diǎn):

  1. 我覺(jué)得不懂?dāng)?shù)據(jù)庫(kù)的程序員不是好程序員,ORM不能幫你生成所有的業(yè)務(wù)語(yǔ)句,有些復(fù)雜的生成不了,還是需要寫SQL,例如復(fù)雜的報(bào)表。

  2. 配制過(guò)于繁瑣,出錯(cuò)后不好定位問(wèn)題點(diǎn)在哪。

  3. 性能低,因?yàn)樗鼉?nèi)部是使用了大量反射,還有數(shù)據(jù)庫(kù)檢測(cè),造成性能必然低下。

  4. 需要額外的學(xué)習(xí)成本,雖然不需要學(xué)習(xí)數(shù)據(jù)庫(kù),但是需要學(xué)習(xí)ORM語(yǔ)句。

  5. 容易引起不規(guī)范開發(fā),因?yàn)镺RM可以在任何地方寫ORM語(yǔ)句然后調(diào)用開發(fā),這樣對(duì)于初始程序員來(lái)說(shuō)他們很可能在系統(tǒng)的任何地方亂丟ORM語(yǔ)句,這樣給維護(hù)帶來(lái)了很大的難度。

因?yàn)槲乙恢倍疾豢春眠@些ORM框架所以缺點(diǎn)寫多了點(diǎn),可能還有些優(yōu)點(diǎn)是我不知道的,路過(guò)的人要是知道可以給我留言,我再補(bǔ)上。

那現(xiàn)在來(lái)談一下我自己的ORM框架,之所以稱它為ORM框架是因?yàn)?,它也達(dá)到了上面ORM框架的幾個(gè)優(yōu)點(diǎn)。

首先我基于抽像數(shù)據(jù)操作層,寫了一套基于ADO.NET的抽像操作數(shù)據(jù)庫(kù)的方法DbHelper

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式