LINQ技术、EF技术都出来蛮久了,软件开发者、软件公司是否还有必要有自己的代码生成器?

标签: linq 技术 ef | 发表时间:2011-06-23 11:18 | 作者:C#.NET通用权限管理系统组件 cchitsiang
出处:http://www.cnblogs.com/

   有一段时间,也怀疑自己,是否有必要继续维护代码生成器?因为微软的LINQ技术、EF技术都出来了,而且资料也开始越来越多了,代码生成器的功能越来越被这些新技术取代了,是否有必要还继续维护代码生成器?今年的3件事情给了一些启发、加强了对代码生成器的认识高度。

 

   1:在国家某部委开发项目,数据库需要用的是Oracle,而且需要控制的数据有上千万条记录,也不用SQLServer数据库,LINQ技术、EF技术派不上用处,应该也是暂时无法用得那么熟练,记得只对SQLServer数据库的支持是很好。

 

   2:在开发某银行的现金管理系统,数据库需要用的是DB2,也明确指定不能用SQLServer数据库,LINQ技术、EF技术派不上用处,若我的配套的基础程序是依赖这些技术的,估计那些业务实现功能都需要重新写过一遍,那是很要命的事情,而且那些基础组件的测试、完善、稳定都是耗费了几年时间,不是几天就可以折腾到DB2上的事情。

 

   3:前几个月,给有3-4年做日本外包开发的同行推荐了代码生成器的用法,这个朋友也是用C#.NET做开发,在北京工作,最近他也用了通用权限管理系统中的代码批量生成器,感觉用起来很爽,很多代码都不用自己写了,省老事情了而且还给身边的朋友在推广,他觉得这么改进了一下后,很多重复代码不用自己人工写了,可以集中精力去做业务实现了。

 

   自己也有一些感触,我们专业做项目类开发的,没办法定位只做SQLServer上的各种应用开发,LINQ技术、EF技术有很多优点,用起来也会很爽,但是有一些基础性的,可以重复利用的组件,不能完全依赖这些技术,需要考虑充分的通用性、兼容性。某个业务性质的开发完全可以用这些新技术,也支持用这些新技术来开发,将来也好维护,也更规范一些,也符合技术潮流。

  

   经历了以上几件事情后,我对代码生成器的价值观也越来越明朗,有一套自己能驾驭的代码生成器还是有必要,毕竟我们会遇到开发各种场景下的业务应用系统,可能是SQLServer的、也可能是Oracle的、还可以是DB2的,有时候还是MYSQL的数据库,不可能为每套系统都开发以系列配套的组件,那根本没精力维护的。

 

   赤手空拳上战场好?还是带上轻机枪上战场好?代码生成器就是。。。 

 

  

 

作者: C#.NET通用权限管理系统组件 发表于 2011-06-23 11:18 原文链接

评论: 54 查看评论 发表评论


最新新闻:
· 要抢QQ地盘了 新浪微博桌面版发布(2011-06-23 17:55)
· 微软7月起Azure云平台入库数据传输实现免费(2011-06-23 17:53)
· eBay将面向卖家推出商品存储保管和配送服务(2011-06-23 17:48)
· iPhone依旧火爆 欧洲四成用户愿购入(2011-06-23 17:44)
· QT SDK更新支持Meego 1.2 Harmattan(2011-06-23 17:42)

编辑推荐:博客园上海俱乐部活动 - 宝玉:iOS开发最佳实践(本周六)

网站导航:博客园首页  我的园子  新闻  闪存  小组  博问  知识库

相关 [linq 技术 ef] 推荐:

LINQ技术、EF技术都出来蛮久了,软件开发者、软件公司是否还有必要有自己的代码生成器?

- cchitsiang - 博客园-首页原创精华区
   有一段时间,也怀疑自己,是否有必要继续维护代码生成器. 因为微软的LINQ技术、EF技术都出来了,而且资料也开始越来越多了,代码生成器的功能越来越被这些新技术取代了,是否有必要还继续维护代码生成器. 今年的3件事情给了一些启发、加强了对代码生成器的认识高度.    1:在国家某部委开发项目,数据库需要用的是Oracle,而且需要控制的数据有上千万条记录,也不用SQLServer数据库,LINQ技术、EF技术派不上用处,应该也是暂时无法用得那么熟练,记得只对SQLServer数据库的支持是很好.

利用Linq写简洁代码

- Xin - 博客园-首页原创精华区
d盘下有Demo.xml,内容如下. 现在想获取type为before的所有MethodName的节点值. Linq To Xml 读取方法. where m.Attribute("type").Value == "before" select m).Descendants("MethodName") select k.Value;//一句话搞定,很给力.

[iPad] EF English First High Flyers Vocab Game for Learning English ~ 透過互動的方式學習英文

- - 海芋小站
還在用傳統背單字卡的方式學英文嗎. 快來試試「EF English First High Flyers Vocab Game for Learning English」這一套軟體吧. 這一套軟體可以讓你透過猜圖像、拚單字、連連看、聽力等遊戲方式來學習英文,如果你覺得你的英文得要從頭加強,這套軟體或許是一套不錯的選擇喔.

前端技术

- - CSDN博客综合推荐文章
随着互联网产业的爆炸式增长,与之伴生的Web前端技术也在历经洗礼和蜕变. 尤其是近几年随着移动终端的发展,越来越多的人开始投身或转行至新领域,这更为当今的IT产业注入了新的活力. 尽管Web前端技术诞生至今时日并不长,但随着Web技术的逐渐深入,今后将会在以下几方面发力. JavaScript的兄弟们.

SSI技术

- - 开源软件 - ITeye博客
1.       SSI,通常称为“服务器端包含”技术. 使用了SSI技术的文件默认的后缀名为.shtml,SSI技术通过在html文件中加入SSI指令让web服务器在输出标准HTML代码之前先解释SSI指令,并把解释完后的输出结果和HTML代码一起返回给客户端. 2.       SSI技术的优点:SSI技术是通用技术,它不受限于运行环境,在java、dotnet、CGI、ASP、PHP下都可以使用SSI技术;解释SSI的效率比解释JSP的效率快很多,因为JSP规范提供了太多的功能,这些功能都需要servlet引擎一一进行解释,所以效率比较低.

技术选型

- - 企业架构 - ITeye博客
MVC Framwork: SpringMVC3.0 Restful的风格终于回归了MVC框架的简单本质,对比之下Struts2概念太复杂更新又太懒了. Template:JSP2.0且尽量使用JSP EL而不是taglib,万一要写taglib也用纯JSP来编写,一向是SpringSide的推荐,Freemarker们始终有点小众, 而Thymeleaf与美工配合度非常高,可惜也是太少用户了.

技术 in Netflix

- - 后端技术杂谈 | 飒然Hang
综合市面上的公开资料总结了Netflix在技术上面的一些实践和创新,从中能够得到不少启发和提示.

技术的异化:读《技术垄断》

- Dynamic - It Talks--上海魏武挥的博客
事实上,我认为国内对马克思或神圣化或妖魔化,都是要不得的. 我们应该还马克思一个伟大的社会学(当然还有哲学、经济学之类)学者的本来面目,而不是把他的话当成教义. 异化就是一个相当精到的学术词语,它所描述的是人们创造发明某物本来为了让人们自己更好地工作生活,结果该物却成了人的主宰. 在很多领域,都有异化的影子,比如宗教,比如官僚体系,当然,也包括技术.

HBase技术介绍

- 三十不归 - 搜索技术博客-淘宝
HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. 上图描述了Hadoop EcoSystem中的各层系统,其中HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制.

Web技术整理

- Gabriel - 博客园-首页原创精华区
  Web技术或许是将来最为热门的技术之一. 这里略作一些总结,以及对各种Web技术作一些概要性介绍. (以下内容建立在我的粗略理解之上,欢迎指正).   推荐个学习Web技术比较好的网站,介绍的比较全面.   页面的展示使用超文本标记语言(HTML)来表示. 这是一种标签语言,本身不具有执行能力,只是结构化页面内容.