精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-05-23
两个困惑的地方: (1)Java 5中新出的Annotation是不是可以类比.Net中的Attribute? (2)既然Hibernate利用Annotation实现了不需要表的XML配置文件,NHibernate岂不是早就该做到了 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-05-25
看一下nhibernate项目中的
NHibernate.Mapping.Attributes 就是做这个的 |
|
返回顶楼 | |
发表时间:2007-05-25
dyzz 写道: 两个困惑的地方: (1)Java 5中新出的Annotation是不是可以类比.Net中的Attribute? (2)既然Hibernate利用Annotation实现了不需要表的XML配置文件,NHibernate岂不是早就该做到了
1. Annotation 就是学.net Attribute的东西,所以java越来越象C#了. 2. Nhibernate不是王道,会如何真的很少人关心. LINQ toSQL和LINQ to Entity 才是官方版本的框架.
|
|
返回顶楼 | |
发表时间:2007-05-25
这些东西都不是王道
最近在做python项目,一个sqlalchemy 就可以秒杀这些东西 |
|
返回顶楼 | |
发表时间:2007-05-25
jjx 写道 这些东西都不是王道
最近在做python项目,一个sqlalchemy 就可以秒杀这些东西 刚小瞄了下sqlalchemy,和LINQ的概念是类似的,所以秒杀LINQ那是谬误di. sqlclchemy result = query.select_by(users_table.c.user_id>224, sql users_table.c.user_name=='john', fullname='John Smith') LINQ var result=from user in users where user.id>224 and user.user_name="john"... LINQ to entity可以工作在ADO.NET entity(Orcas重要更新之一)上的,ADO.NET entity则类似于ORM框架,但是配置更简单更友好. LINQ的结果可以直接绑定到Gridview里去,更重要的是LINQ to entity是支持继承di. |
|
返回顶楼 | |
发表时间:2007-05-25
小瞄一下是不够的呀,真正用过才能说好啊,呵呵
sqlalchemy 设计思维很独特,它实际上有三个层,dbengine,metadata,orm ,你可以根据你的实际来选择混用这些层,而大部分orm,则强迫用对象去思考,而一个实际项目中,通常只有一半或更少的东西是真正适合实用orm 至于语言的便利性就不讲了 ,除了sqlalchemy本身,elixir构造在sqlalchemy 上,提供类似rails activerecord dsl描述 linq to entity 的性能还有很大路要走,eql还不完善.还有那一大堆配置,搞的非的借助设计器不行,在重量级上,.net /java是一致的,他从来不是开发者真正需要的东西 linq to sql 现在应该是相对完美些,但我已经中了动态语言的毒了,不会在回头了 btw : 数据绑定从来不是orm要考虑的,如果要谈,linq to sql,linq to entity都只是提供了简单的IPropertyNotify类的接口,和 dataset(datatable)支持的一大堆接口完全不能等同,如果你在windows forms中使用linq to entity,linq to sql 的话,你也会非常苦恼,因此,干脆抛弃这些东西更好 |
|
返回顶楼 | |
发表时间:2007-05-25
jjx 写道 小瞄一下是不够的呀,真正用过才能说好啊,呵呵
sqlalchemy 设计思维很独特,它实际上有三个层,dbengine,metadata,orm ,你可以根据你的实际来选择混用这些层,而大部分orm,则强迫用对象去思考,而一个实际项目中,通常只有一半或更少的东西是真正适合实用orm 至于语言的便利性就不讲了 ,除了sqlalchemy本身,elixir构造在sqlalchemy 上,提供类似rails activerecord dsl描述 linq to entity 的性能还有很大路要走,eql还不完善.还有那一大堆配置,搞的非的借助设计器不行,在重量级上,.net /java是一致的,他从来不是开发者真正需要的东西 linq to sql 现在应该是相对完美些,但我已经中了动态语言的毒了,不会在回头了 btw : 数据绑定从来不是orm要考虑的,如果要谈,linq to sql,linq to entity都只是提供了简单的IPropertyNotify类的接口,和 dataset(datatable)支持的一大堆接口完全不能等同,如果你在windows forms中使用linq to entity,linq to sql 的话,你也会非常苦恼,因此,干脆抛弃这些东西更好 我个人看法: 虽然实现细节不同,但LINQ和sqlalchemy是概念类似的...如果sqlalchemy提高了开发效率,那LINQ也会 |
|
返回顶楼 | |
发表时间:2007-05-25
个人看法,我从objectspaces pdc就关注.net orm的发展,也用了许多东西,但现在sqlalchemy才是真正让我满意的,什么linq ,那是花架子,项目中的意义不是很大
概念都是类似的,但行事方式和思维有差异的,这是真正造成语言丰富多彩的因素 谈C#的发展,其实java也是一样,前景自然很美,但你只能被动的等待 想想老马之类的为什么这么吹捧ruby ,那是因为ruby简直是架构设计师的梦幻语言,用户能轻易的扩充语言的基本设施.python这方面相对不如ruby来的激进,但好处的语法优雅,易懂 而java,C# 之类的,我们只有等设计者来修改编译器 C# 3.0虽然引入了不少新东西,但有时想象delegate都是类,匿名代理也是类,lambda 都是类,语言底层难道不能该改,该用function的就用function,像python一样的function 多轻巧,据说vbx 要走和 c#不同的路线了,设计者要另起炉灶了,这才是好事,不要把真正的语言的特色都抹杀掉了 |
|
返回顶楼 | |
发表时间:2007-05-25
C#的设计目标毕竟和ruby不一样的,毕竟软件也不等于ORM,C#还得去兼顾别的领域,比如对DirectX的支持,比如对commnucation的支持...但它在不断吸收别的语言的长处,这是C#团队比java团队好的地方.
比如DLR的引入,也许也会是件很了不起的事情... |
|
返回顶楼 | |
发表时间:2007-05-25
jjx 写道 个人看法,我从objectspaces pdc就关注.net orm的发展,也用了许多东西,但现在sqlalchemy才是真正让我满意的,什么linq ,那是花架子,项目中的意义不是很大
这里就主观了... 其实如果我写项目,linq或者orm也许都不会用,一层SP,一层SQL mapping,便于调优,便于修改,it is enought. 不过回头我也去看看sqlalchemy,新鲜的东西还是值得研究下下的. |
|
返回顶楼 | |