首頁
新聞
功能
下載
開發
支援
論壇
文件
搜尋
關於我們
歡迎光臨,
訪客
. 請先
登入
或
註冊一個帳號
.
十一月 23, 2024, 06:51:39 上午
19595
文章 在
3865
主題 由
4579
會員
最新註冊會員:
aa123aa1
首頁
說明
搜尋
登入
註冊
LifeType 中文開發論壇
|
開發
|
核心補強
|
关于LifeType中DAO的问题
« 上篇主題
下篇主題 »
頁:
[
1
]
列印
作者
主題: 关于LifeType中DAO的问题 (閱讀 10547 次)
asers
新手見習
文章: 4
关于LifeType中DAO的问题
«
於:
二月 22, 2008, 05:09:56 下午 »
LifeType贯穿始终都有一个很强的面向对象的味道,其中很多思想值得借鉴学习,唯一一点我想说一下我的观点,希望大家可以讨论一下:
在LifeType的dao目录中大量的数据对象模型,例如article / blogcategory 等等。以article为例,在获取单个文章时,使用这个模型无疑是上上之策,但是在获取一个列表时,articles的getBlogArticles方法里面,他使用了mapRow的方法将数据库的结果集压入article对象,然后返回这个对象,再然后把这些对象压入到一个数组,我想,这么做可以带来极大的便利,并可以让代码非常的优雅。但他所带来的负面影响却远胜于这些优点,例如资源消耗以及执行效率。
LifeType引入了DAO的模式,将数据层中的基础数据操作与复杂的数据逻辑分离开来,这无疑是一个非常不错的做法,但是这么做带来的资源占用确实不容小觑,尤其是在一个高并发的WEB应用中。我在下面描述一下一个可能的需求,看看LifeType的DAO将会如何工作:
一名用户发表了一篇Blog文章,LifeType将这篇文章压入Article对象(在LifeType中他们把这称作dbObject),然后将这个对象传递到articles的addArticle方法中,然后根据需求解析这个对象,并将数据写入到数据库中。如果我需要在发布后立即观看这篇文章,那么就存在的另外一个问题Lifetype需要取出数据再次写入到article对象中,然后再到模板中解析这个对象显示数据。或者说,我需要返回到文章列表,依然是无可避免的再次大量的对象被创建。
我十分想知道LifeType这么做的原因,处于维护角度还是强烈的OO思想使他们不得不这样做?我相信这样做并不会对程序效能有任何提升。它实际上是绕了一个圈子。
有错误之处希望大家能指出,不知道是否可以去掉这些过程,来提升效能以及对内存的占用。
已記錄
頁:
[
1
]
列印
LifeType 中文開發論壇
|
開發
|
核心補強
|
关于LifeType中DAO的问题
« 上篇主題
下篇主題 »
前往:
請選擇目的地:
-----------------------------
站務
-----------------------------
=> 站務公告
=> 站務建議
=> 帳號與文章刪除
-----------------------------
支援
-----------------------------
=> 安裝與設定
=> 使用與操作
=> 虛擬主機討論
=> Instant LifeType 專區
===> 安裝與設定精華區
===> 使用與操作精華區
===> 虛擬主機討論精華區
===> 虛擬主機商自我推薦區
===> Instant LifeType 精華區
-----------------------------
開發
-----------------------------
=> 外掛程式
=> 模版設計
=> 核心補強
=> 手冊文件
=> 中文相關
===> 外掛程式精華區
===> 模版發表
===> 模版設計精華區
===> 核心補強精華區
===> 手冊文件精華區
===> 中文相關精華區
-----------------------------
測試
-----------------------------
=> LifeType 1.0 測試
=> LifeType 1.1 測試
-----------------------------
部落格應用
-----------------------------
=> 教育部落格
-----------------------------
建議
-----------------------------
=> 要求與建議
=> 發表與交流
=> 網誌文化與業界動態
Powered by SMF 1.1.6
|
SMF © 2006-2008, Simple Machines LLC
載入...