论坛首页 Java企业应用论坛

面向对象的概念是否被神化了?

浏览 14443 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (17)
作者 正文
   发表时间:2008-07-14  
cuckoo framework 中的ajaxdatagrid

<cf:ajaxdatagrid sqlKey="getUserList" header="姓名,年龄,性别,成绩" />

sqlKey指sql语句的代号,保存在xml文件中的。header是列头。

这个tag很简单的数据库中的值给查询出来了。

SQL能不能搞定业务?能!

oracle提供很多功能,如存储过程,函数等等。

我们可以利用存储过程和函数的作用,高效简单的实现业务逻辑。

如果使用目前各式各样的持久层框架,就没有这么轻松了,劈里啪啦花几个小时写一堆所谓的面向对象的代码,最终的目的还是一个,把结果查询出来,说不定查询的速度还慢的要命。

有时候感觉面向对象的概念被神化了,大师们在追捧,大拿们在鼓吹,老板们在赶时髦;其中的涉及的利益链很深,最倒霉的是程序员在疲于奔命的学习、加班。

面向对象是一种想法,不知道程序员们有多少真正了解;老板问你会不会Hibernate,会就给高点工资,于是程序员在想Hibernate是必须要学的;大家应该都明白用简单的方法做好事情的道理,可到了代码开发,偏偏追求时髦,把简单的问题复杂化。

围绕关系数据库进行各式各样的业务应用,我们是否有更简单的方法?

   发表时间:2008-07-14  
SQL能不能搞定业务?能!
楼主,我这有段03年的SQL,也就半屏幕多一点,还有若干存储过程,交给您去维护好了。
另外,在您的眼里,程序就是简单的从数据库里查询吗?
我支持你文章的标题,但不支持你文章的内容。
0 请登录后投票
   发表时间:2008-07-14  
面向对象是一种思想,而程序的最小单位,总是过程化的执行。也就说从大了看是对象,而拿着放大镜看其局部,都是一个一个的过程化的代码组成。

没有什么矛盾的。
11 请登录后投票
   发表时间:2008-07-14  
哈哈,支持异见,查询只是个简单的例子,维护存储过程和维护java没有本质的区别,关键看你如何组织你的代码。
0 请登录后投票
   发表时间:2008-07-14  
zxbyhcsdn 写道
有些应用,比如说 数据集合的关系操作,还有比较大的事务,还有性能要求高的地方
就用Sql或者存储过程.
当然可维护性和可复用性就不好了,但是.设计麻,需要你的取舍.

OO又不是万能的.还是又他不好使的地方三
比如说以前用手撕肉,撕菜.现在有菜刀了. 当然是好事情.
但是不等于说永远就不用手撕肉了,拿别个手撕鸡,手撕包菜,你用菜刀怎么弄麻??


这点我认同,但可维护性和可复用性,我觉得关键在于前期设计。

其实根本的想法还是在于:能不能再简单点。
1 请登录后投票
   发表时间:2008-07-14  
runthu 写道
哈哈,支持异见,查询只是个简单的例子,维护存储过程和维护java没有本质的区别,关键看你如何组织你的代码。


不能苟同阿
理由就不表了 sql不支持抽象类 复用都是问题
0 请登录后投票
   发表时间:2008-07-14  
面向对象和面向过程哪个好维护?不过一样,ORM解决不了所有问题。。
0 请登录后投票
   发表时间:2008-07-14  
个人的经验,业务上的复用,关键是设计,这里的设计不是说完全靠sql来闯天下,(也许是上面的“一个SQL引发的血案”),也不是java的面向对象的特性所能完全解决的,没有听谁说linux的C源代码就一定没有复用的特性。

其实还是前不久看到的一个争论,以数据模式为核心,还是以对象模式为核心,个人感觉在实际的开发过程中,尤其是以关系数据库为核心应用开发过程中,OO的作用似乎被神化了,是不是有更简洁简单的技术。

OO如火如荼的今天,发出这样的疑问,无疑会被骂的狗血喷头,但为什么开发效率如此低下且bug丛生,尤其是对客户需求的理解经常变动的情况下,程序员更是疲于奔命。

OO思想如果用在api设计层面,体现出来的优势很明显,简洁而优雅。但国内大部分开发者还是局限于行业应用,行业知识能否迅速有效的转化为OO思想,并提炼为干净简洁的OO代码,是个值得考量的事情。
0 请登录后投票
   发表时间:2008-07-15  
只有那些可以被越多人接受,被越多人理解,被越多人觉得好用的东西,才会有越多人来用,也才会越来越好用。

一条路很近,但是很险;另一条路很远,但是很平坦。你觉得大多数人会选择哪条呢?
0 请登录后投票
   发表时间:2008-07-15  
runthu 写道
个人的经验,业务上的复用,关键是设计,这里的设计不是说完全靠sql来闯天下,(也许是上面的“一个SQL引发的血案”),也不是java的面向对象的特性所能完全解决的,没有听谁说linux的C源代码就一定没有复用的特性。

其实还是前不久看到的一个争论,以数据模式为核心,还是以对象模式为核心,个人感觉在实际的开发过程中,尤其是以关系数据库为核心应用开发过程中,OO的作用似乎被神化了,是不是有更简洁简单的技术。

OO如火如荼的今天,发出这样的疑问,无疑会被骂的狗血喷头,但为什么开发效率如此低下且bug丛生,尤其是对客户需求的理解经常变动的情况下,程序员更是疲于奔命。

OO思想如果用在api设计层面,体现出来的优势很明显,简洁而优雅。但国内大部分开发者还是局限于行业应用,行业知识能否迅速有效的转化为OO思想,并提炼为干净简洁的OO代码,是个值得考量的事情。

那是因为只打了OO的幌子,或者根本就没OO。
该检讨的是我为什么没有用好它,而不是不用它。
为什么对客户需求的理解经常变动?那是因为没有抓住问题的本质,没有分析出需求对应的领域模型。
这点,我也做的不够好,或者说是用的不够好。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics