日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

db4o, 看上去很美

發布時間:2024/4/15 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 db4o, 看上去很美 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
由于厭煩了手寫Sql,在幾個小項目中嘗試著使用了Db4O.DAL層寫起來是爽了,但是,還是有很多其它東西會絆你的腳。

  • 沒有主鍵的概念(因為對象的內存地址,或者引用就能標志一個對象了).因而外界想指向一個具體的對象就比較困難(比如本頁的url里的1079505).
  • 激活/保存層次的問題.獲取一個對象,它的字段引用了其它對象,那么到底激活多少層次合適?保存時也是如此.層次深了傷性能,層次淺了用著不方便(動不動就是Null reference).
  • 對象引用問題.RDBMS里我們能很輕易地明白一個引用指向的是對象的淺拷貝(因為只引用了一個主鍵).而一旦與內存中的對象勾搭起來,那深拷貝和淺拷貝就不容易區分了,很難說清我刪除了一個對象會不會讓某個其它對象的某個字段變成null(同樣,修改對象也不容易看清其影響范圍).
  • 對象生存期問題.這是個看起來很奇怪甚至愚蠢的問題:沒有被其它對象引用的對象是否應該存在于數據庫中?換句話說,ODBMS要不要擁有GC功能?如果有GC功能的話,能夠避免誤刪除被其它對象引用的對象,而且能夠清除不再需要的數據.但是相應地,它讓開發必須考慮更多的問題,保證每個對象的靜態可達性.
  • 數據庫版本進化難以跟蹤.由于數據庫的結構與對象的結構基本一致,對對象模型的任何修改都會導致數據庫結構的變化,而這個過程中原有數據如何處理必須加以特殊處理(Db4O里提供了字段改名之類的api,但是至少我很討厭每修改一次對象就要寫幾行這樣的代碼).換句話說,我覺得數據庫和對象之間耦合嚴重了,不利于修改.
  • 沒有類似Sql的成熟且流行的查詢語言(或者你必須學習一種新語言)進行數據管理.很多時候,直接操作數據庫也是必須的,這時你會非常想念Sql.
  • 總體而言,對于熟悉關系數據庫及基于關系數據庫進行軟件開發的人而言,對象數據庫并不僅僅意味著換個存儲方式.要真正高效地使用它,可能需要很長時間的摸索和適應.對我而言,Db4O是看起來很美,用起來很玄 :)

    轉載于:https://www.cnblogs.com/deerchao/archive/2008/06/12/1079505.html

    超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

    總結

    以上是生活随笔為你收集整理的db4o, 看上去很美的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。