我对linq的一点看法

在Linq To Sql推出之前,我们只是把sql语句形成一个string,然后,通过ado.net传给sql server,
返回结果集。这里的缺陷就是,如果你sql语句写的有问题,只有到运行时才知道。而且并不是所有的人都懂
数据库的。Linq To SQl在一切围绕数据的项目内都可以使用。特别是在项目中缺少sql server方面的专家
时,Linq To SQl的强大的功能可以帮我们快速的完成项目。Linq To SQL的推出,是让大家从烦琐的技术
细节中解脱出来,更加关注项目的逻辑。Linq To Sql的出现,大大降低了数据库应用程序开发的门槛,
它实质是事先为你构架了数据访问层,势必将加快数据库应用程序的开发进度。Linq To Sql解放了众多程序
员,让他们的把更多的精力放到业务逻辑以及code上,而不是数据库。对于初学者来讲,Linq To Sql可以
让他们迅速进入数据库应用程序开发领域,节约了培训成本。

这应该是网上最为经典的一段对Linq的评价了.不管别人怎么看,反正我偷摸的对它总是有很多的腹诽(其中一些也是3.0,3.5中的)

1)	杂草一样乱糟糟的代码.这应该是所有刚接触这个东西的人的一个普遍的感觉.不要对这个说”
无所谓”,因为习惯是个很可怕的东西,否则Java程序员也不会一如既往的搞Java,C++的同仁们也是一如既往的
对Java和C#保留着敌对情绪了

2)	杂草带来的方便性.这个是很值得玩味的东西,过分的依赖黑盒子中的东西总是让人们充满了恐惧,另外
就是那些简化的代码结构往往不能满足我们的需求,就拿属性来说,在get的时候,几乎很少会只有一个简简单单
的return,那里面往往有好多业务逻辑存在,这种东西就和聋子的耳朵差不多,有没有是一回事,有用没用是另外
一回事.

3)	新特性带来的代码扩充,这东西会伴随着及其恐怖的规范化问题.所以公司出面封装成底层库就成了
必然的事实了,既然如此,这种”扩充”又和公司以前封装的底层库有什么区别呢?这就跟同居的两个人结婚与否
的区别差不多:没结婚的时候,晚上要XX,结婚了也XX,一个是被官方支持的,一个是为了自己和对方方便偷摸搞
的,仅此而已

4)	Linq所带来的数据访问层,其实这和3中描述的差不多,公司要出面进行封装的,

5)	Sql语句有问题与否,在编译阶段发现还是在运行时发现,两者之间的区别没有什么太大的意义.而且
成熟的公司都有自己的sql组装器一类的东西,所以这个问题可以忽略.除非这个公司的规范化是假的(如果真的
是这样,那么该操心的就不是语言能给我们提供多大的方便性了)

6)	任何新特性的推出,如果在易用性和性能上能够满足商业需求,公司都会对其进行封装,除了业务层和
UI层以外,coder几乎不会涉及到任何其它的东西了.所以这个节约成本也是”想当然的结果”

虽然我天天去吃抻面,但是我的确不喜欢这个味道.同样,虽然我不喜欢linq,但是我们还是会去学它.

写点东西发发牢骚, 只是想告诉大家不要被光环和官方的宣传所蒙蔽.正常人早晚要结婚,正常的.NET程序员也
早晚要学Linq,所以摆正心态和姿态很重要

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值