作者adrianshum (Alien)
看板java
标题Re: [站内] 找工作真的很难
时间Fri Jun 15 10:49:09 2007
※ 引述《tsumarahi (kapa)》之铭言:
: 喔我自己是几乎没用到native sql过,都用hql
: 另外你有办法提出哪个OR mapping可以完全不用碰sql 或类sql的吗?
: 依我所知道,不可能.
: hibernate确实让操作资料库部分比较OO,
: 但是如果呆板到认为使用hibernate就一定得OO,那我只能说,没事干麻帮自己上手铐.
: 为何用jdbc时就可以用不oo的解,为何hibernate就一定得有?
: 先想出个可以OO的解 再说hibernate做不做得到吧.
BINGO
这句说得够精准, 我之前一直想说出这
一点但 L 君好像就是不明白.
硬要把 business domain 的 layer 铐着
persistence layer 的东西. 为什麽用 JDBC
就不需要理会 OO? 就不需要理会 fatherName
(之前的例子) 属於谁?
: 他那个例子最大问题在於,那个count出来的东西要属於谁,
: 如果有人认为可以属於Parent,那麽给个Parent(parent, count)
: 跟hql也是可以做的很漂亮.
: 也可以不要属於Parent好了
: 再给个class ParentInfo
: ParentInfo(Parent, int).
: 也很合理,应该不会太不合理吧?
: : 哪就得要问一句, hibernate 为你带来的效益是什麽了?
: : 我是没比较过用了hibernate 後, 比没用时, 到底带来
: : 效益的差异到底多少,
: : 例如, 开发速度比较快, 快多少?
: : db access 比较少, 但少多少?
: : 系统跑起来比较快, 快多少?
: : 既然你这麽熟hibernate, 相信做过的hibernate 的case 不少, 有以上的数字吗?
: 这东西没办法数据化
: 首先,我到现在没说我很熟,不要误会
: 每个人在比较时有人说快了几倍,请问这东西谁来评断?谁来决定?谁来说公不公平
: 这都是嘴泡.我说快三倍,可能会有人说虎滥,他怎麽没感觉.
: 我说快一倍,可能会有高手跳出来说不只唷,他用的怎样怎样
: 另外系统一定不会跑起来比较快,但是搭配cache,以及好的调整确实可以到不错的水准.
: 就说去看看网路上文章,没记错如果搭配好cache,"有人"认为可以到达更好的效能水准.
: 我真不懂耶,我只是在告诉你之前那个例子做得到.
: 怎麽讲到数据了,我没兴趣详细介绍hibernate哪好哪不好,网路上一堆
: ,我想我也还不够格,我不认为自己有能力可以说服已经持否定评价的人,
: 这可能得请更高手才做得到.
我觉得很奇怪的是,
为什麽 L 君一直只是在叫别人要提证据去
说服他用某某 framework 快多少. 原本的
话题就不是在质疑这种东西. 他提出质疑
Hibernate (or other framework) 未必能
带来效益, 不是该他去找出证据说 Hibernate
不能带来效益吗? 可是他只一味要人提证
去说服他, 老实说我实在看不出这是什麽的
"讨论".
发完一点劳骚我也想说一点意见.
大部份 framework 想解决的问题都是针对
特定问题, 要是你没有处身过在那种问题
里面你并不会感到某 framework 的价值.
比如套回原本的例子, 直接从 DB 取得
child info 和 father name 直接显示,
这些在小型的 app 中玩玩的话可能用 JDBC
会比较简单, 因为developer 根本没有把
domain model layer 和 persistence layer
decouple 的观念. 当你需要 decouple 它们
你就会发觉 JDBC DAO的 solution, 每一个
data access operation 你都要写很多大同
小异的 SQL, 再自己去把result set 里面的
东西塞进 domain model, 或者要兼顾 concurrent
update 时的问题 ( => 处身在问题中). 这
时你才能体会 Hibernate 等的 OR Mapping
framework 究竟在解决你什麽问题、它的价
值是什麽.
无疑没有一个 framework 能解决所有问题,
所以才要选择 framework, 因应自己要解决的问
题来选适当的解决方法, 而不是一直企图证
明某framework 不是一把万用刀而否定其存在价
值.
Alien
Alien
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 202.22.246.26