最新评论

共2页: 1 2 下一页 
JustForKim 2008-10-17 14:51
@极地雪狼
这样说,只是偶当时中OO毒颇深的原因
极地雪狼 2008-10-15 14:57
博主的最后一段很经典。
canbeing 2008-10-11 23:54
要灵活有选择性的使用OO
yaotyl1 2008-10-11 17:54
面对复杂的业务逻辑,存储过程就无能为力了,但对于大数据量的数据交互,传统OO又不可取,这个时候就用到了临时表。
不若相忘于江湖 2008-10-11 11:57
同意grang zhang
HappyQQ 2008-10-11 11:46
支持楼主的观点

OO虽好,但有她的缺点。
--引用--------------------------------------------------
mikel: 数据库是关系的
而语言是OO的,为何不让关系的归关系,OO的去OO呢?
LZ的问题也是普遍存在的滥用OO的问题,适合的才是最好的,没必要生拉硬套什么万事万物皆对象
--------------------------------------------------------
支持!
mikel 2008-10-11 08:38
数据库是关系的
而语言是OO的,为何不让关系的归关系,OO的去OO呢?
LZ的问题也是普遍存在的滥用OO的问题,适合的才是最好的,没必要生拉硬套什么万事万物皆对象
C+++ 2008-10-10 18:29
同意楼主!!
对象及其相关事务用OO来表示,没错!
而对于对象的选取就要用描述语言了
比如:
苹果是种对象,我要选好吃的苹果就要找红的,皮上有条纹的,这是对要选取的对象的描述语言,所以SQL和对象用于不用的方面,不要总想用O取代SQL,那是不可能的
金色海洋(jyk) 2008-10-10 16:13
如果只是显示数据(包括统计、报表、汇总),那么写一个SQL语句(包括视图和存储过程),然后DataTable 一绑定就OK了。
winter-cn未登录 2008-10-10 15:58
对OO的误解已经如此之深了?
谁能正确地说下啥叫OO
JustForKim 2008-10-10 15:06
@金色海洋(jyk)
说得对,sql是非过程化的语言,但各类数据库开发商为了加入流程控制的元素而扩展了基本的sql,包括pl/sql、T_sql,这是通过Package、存储过程或函数来体现的。

@Gray Zhang
@金色海洋(jyk)
@飞林沙
感谢回复,加深了理解,完全的OO是不可取的。实际上,对象里的方法也是过程化执行的,重点在于如何决定对象的颗粒度。正如Gray Zhang所说的,OO化并不是说所有的逻辑都放在业务层中去处理,“表面化”、粗颗粒的OO也是一种选择。
Atpking 2008-10-10 14:51
LINQ 下
Nhibernate
ORM 都是不错的选择
呵呵 关键还是要看复杂度
就为一个页面拼接字符串而使用Hibernate 确实不是很明治的做法
colder 2008-10-10 14:36
你说的对

这就是"纯OOP的尴尬"
飞林沙 2008-10-10 14:20
完全的OO必然会牺牲效率,而且对于一次性开发来说可能会影响一部分开发效率,他为的是一个长远的可维护和可复用。
所以,究竟是否OO,OO到什么程度,这是一个需要折中考虑的问题
金色海洋(jyk) 2008-10-10 12:44
SQL全称是“结构化查询语言(Structured Query Language)”   SQL(STructured Query Language)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。   SQL同时也是数据库脚本文件的扩展名。   SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。他不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。 摘自:http://baike.baidu.com/view/34.htm T-SQL是Microsoft公司在关系型数据库管理系统SQL Server中的SQL-3标准的实现,是微软对SQL的扩展,具有SQL的主要特点,同时增加了变量,运算符,函数,流程控制和注释等语言元素,使得其功能更加强大.T-SQL对SQL Server 十分重要,SQL Server中使用图形界面能够完成的所有功能,都可以利用T-SQL来实现.使用T-SQL操作时,与SQL Server通信的所有应用程序都通过向服务器发送T-SQL语句来进行,而与应用程序的界面无关.
金色海洋(jyk) 2008-10-10 12:40
1、SQL好像不是“面向过程”吧,他是第五代语言。

2、你说的这个正好是OO的弱点,同时也是数据库(SQL)的长处。所以会有这样的结果。要知道数据库就是干这个的,OO嘛,像ls说的,做个“表面”处理就可以了。
Gray Zhang 2008-10-10 12:23
OO化并不是说所有的逻辑都放在业务层中去处理,定义一个方法,在方法中使用SQL,对外依旧返回对象列表,这样有什么问题吗
黄牛 2008-10-10 12:14
我也碰到过这类问题,关注中...
shawnliu 2008-08-09 02:51
strategy和template method还比较容易区分吧。
command和strategy的确比较难区分,他们的类图结构实际上很相似,简单点的command dp使用才会感觉难区分,复杂的command例如undo,redo等就很显然能够区分。对于难区分的状态就得靠自己体会了,你说的就是一种常见的状态区别。前面那个请求方法和算法实际上很难说出区别,算法可能也就是一个方法。后面多个和一个区别到是不错。所以总结一下command往往需要一个collection,例如list,arraylist,stack,queue等把command instances组织起来提供服务。
shawnliu 2008-08-09 01:47
关键是个习惯问题 能不能坚持下去
共2页: 1 2 下一页