锁定老帖子 主题:面向对象的概念是否被神化了?
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (17)
|
|
---|---|
作者 | 正文 |
发表时间:2008-07-14
<cf:ajaxdatagrid sqlKey="getUserList" header="姓名,年龄,性别,成绩" /> sqlKey指sql语句的代号,保存在xml文件中的。header是列头。 这个tag很简单的数据库中的值给查询出来了。 SQL能不能搞定业务?能! oracle提供很多功能,如存储过程,函数等等。 我们可以利用存储过程和函数的作用,高效简单的实现业务逻辑。 如果使用目前各式各样的持久层框架,就没有这么轻松了,劈里啪啦花几个小时写一堆所谓的面向对象的代码,最终的目的还是一个,把结果查询出来,说不定查询的速度还慢的要命。 有时候感觉面向对象的概念被神化了,大师们在追捧,大拿们在鼓吹,老板们在赶时髦;其中的涉及的利益链很深,最倒霉的是程序员在疲于奔命的学习、加班。 面向对象是一种想法,不知道程序员们有多少真正了解;老板问你会不会Hibernate,会就给高点工资,于是程序员在想Hibernate是必须要学的;大家应该都明白用简单的方法做好事情的道理,可到了代码开发,偏偏追求时髦,把简单的问题复杂化。 围绕关系数据库进行各式各样的业务应用,我们是否有更简单的方法? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-07-14
SQL能不能搞定业务?能!
楼主,我这有段03年的SQL,也就半屏幕多一点,还有若干存储过程,交给您去维护好了。 另外,在您的眼里,程序就是简单的从数据库里查询吗? 我支持你文章的标题,但不支持你文章的内容。 |
|
返回顶楼 | |
发表时间:2008-07-14
面向对象是一种思想,而程序的最小单位,总是过程化的执行。也就说从大了看是对象,而拿着放大镜看其局部,都是一个一个的过程化的代码组成。
没有什么矛盾的。 |
|
返回顶楼 | |
发表时间:2008-07-14
哈哈,支持异见,查询只是个简单的例子,维护存储过程和维护java没有本质的区别,关键看你如何组织你的代码。
|
|
返回顶楼 | |
发表时间:2008-07-14
zxbyhcsdn 写道 有些应用,比如说 数据集合的关系操作,还有比较大的事务,还有性能要求高的地方
就用Sql或者存储过程. 当然可维护性和可复用性就不好了,但是.设计麻,需要你的取舍. OO又不是万能的.还是又他不好使的地方三 比如说以前用手撕肉,撕菜.现在有菜刀了. 当然是好事情. 但是不等于说永远就不用手撕肉了,拿别个手撕鸡,手撕包菜,你用菜刀怎么弄麻?? 这点我认同,但可维护性和可复用性,我觉得关键在于前期设计。 其实根本的想法还是在于:能不能再简单点。 |
|
返回顶楼 | |
发表时间:2008-07-14
runthu 写道 哈哈,支持异见,查询只是个简单的例子,维护存储过程和维护java没有本质的区别,关键看你如何组织你的代码。
不能苟同阿 理由就不表了 sql不支持抽象类 复用都是问题 |
|
返回顶楼 | |
发表时间:2008-07-14
面向对象和面向过程哪个好维护?不过一样,ORM解决不了所有问题。。
|
|
返回顶楼 | |
发表时间:2008-07-14
个人的经验,业务上的复用,关键是设计,这里的设计不是说完全靠sql来闯天下,(也许是上面的“一个SQL引发的血案”),也不是java的面向对象的特性所能完全解决的,没有听谁说linux的C源代码就一定没有复用的特性。
其实还是前不久看到的一个争论,以数据模式为核心,还是以对象模式为核心,个人感觉在实际的开发过程中,尤其是以关系数据库为核心应用开发过程中,OO的作用似乎被神化了,是不是有更简洁简单的技术。 OO如火如荼的今天,发出这样的疑问,无疑会被骂的狗血喷头,但为什么开发效率如此低下且bug丛生,尤其是对客户需求的理解经常变动的情况下,程序员更是疲于奔命。 OO思想如果用在api设计层面,体现出来的优势很明显,简洁而优雅。但国内大部分开发者还是局限于行业应用,行业知识能否迅速有效的转化为OO思想,并提炼为干净简洁的OO代码,是个值得考量的事情。 |
|
返回顶楼 | |
发表时间:2008-07-15
只有那些可以被越多人接受,被越多人理解,被越多人觉得好用的东西,才会有越多人来用,也才会越来越好用。
一条路很近,但是很险;另一条路很远,但是很平坦。你觉得大多数人会选择哪条呢? |
|
返回顶楼 | |
发表时间:2008-07-15
runthu 写道 个人的经验,业务上的复用,关键是设计,这里的设计不是说完全靠sql来闯天下,(也许是上面的“一个SQL引发的血案”),也不是java的面向对象的特性所能完全解决的,没有听谁说linux的C源代码就一定没有复用的特性。
其实还是前不久看到的一个争论,以数据模式为核心,还是以对象模式为核心,个人感觉在实际的开发过程中,尤其是以关系数据库为核心应用开发过程中,OO的作用似乎被神化了,是不是有更简洁简单的技术。 OO如火如荼的今天,发出这样的疑问,无疑会被骂的狗血喷头,但为什么开发效率如此低下且bug丛生,尤其是对客户需求的理解经常变动的情况下,程序员更是疲于奔命。 OO思想如果用在api设计层面,体现出来的优势很明显,简洁而优雅。但国内大部分开发者还是局限于行业应用,行业知识能否迅速有效的转化为OO思想,并提炼为干净简洁的OO代码,是个值得考量的事情。 那是因为只打了OO的幌子,或者根本就没OO。 该检讨的是我为什么没有用好它,而不是不用它。 为什么对客户需求的理解经常变动?那是因为没有抓住问题的本质,没有分析出需求对应的领域模型。 这点,我也做的不够好,或者说是用的不够好。 |
|
返回顶楼 | |