在程序开发过程当中,程序员会经常做着重复性的工作,最常见的是访问数据库,程序员要经常编写增、删、改、分页之类的操作。为了避免这个问题,节省大量机械录入的时间和重复劳动,提高工作效率,而将精力集中于核心业务逻辑的开发。一个适合于自己使用的代码生成器显得非常重要。
1.动软
国内流行最广。动软.Net代码生成器是一款李天平开发的为C#数据库程序员设计的自动代码生成器,Codematic 生成的代码基于面向对象的思想和三层架构设计,结合了Petshop中经典的思想和设计模式,融入了工厂模式,反射机制等等一些思想。主要实现在对应数据库中表的基类代码的自动生成,包括生成属性、添加、修改、删除、查询、存在性、Model类构造等基础代码片断,支持不同3种架构代码生成。
其它功能:自动生成SQL脚本;自动生成数据库结构文档。
优点:简单易用,符合国人习惯
缺点:灵活度太差,生成后经常需要经过手工修改,才能运用于项目中。虽然公开了一些插件的源代码,但还是很麻烦
下载地址:http://www.maticsoft.com/download.aspx
2.CodeSmith
一款国际知名度最高的基于模板的代码生成器,模板采用类似C#的脚本语言,有点像Xls+Xml的生成模板的方式。
它主要特点在于模板的定制能力强,你完全可以像使用C#语言开发程序一样,编写属于自己的模板。如果嫌麻烦,在网上完成可以找到想要的模板,稍加修改就可以变成适合自己的了。你一些ORM(NHibernate、IBatis、LINQ)、三层架构(Petshop、NTiers)、数据库(分页、CRUD存储过程、生成基础数据)、架构(CSLA.NET)、Ajax等等。几乎覆盖了所有应用,可以说“只有想不到,没有做不到”。
界面和操作与Visual Stdio有点类似。在模板库中选定模板(双击)后,在编辑窗口中可进行适当修改(一般不需要修改,除非有特殊情况),然后在属性设置窗口,
- 优点: 灵活;拥有大量的模板资源
- 缺点: 学习相关语言;收费
3.MyGeneration.NET
与CodeSmith类似的一个非常出色代码生成工具,都是以模板作为基础。它拥有大多数CodeSmith的优点,而且模板资源不需要自己到处寻找,官方网站中提供了大量官方或其它用户上传的模板,客户端只要能联上网,就可以随时同步更新这些模板,方便多了。
还有比较重要的一点是:完全开源。这样你即不需要付一笔费用,还可以随意定制适合自己的代码生成工具。
下载地址:http://sourceforge.net/projects/mygeneration