自动化代码生成工具_自定义代码生成器
目录:
- 1、中文版编写php代码的工具有那些?
- 2、thinkphp与yii 哪个更优秀,分别是哪些方面优秀
- 3、Java开发工具哪个好
- 4、自动化框架工具有哪些
- 5、怎样利用 eclipse mybatis generator 自动生成代码
- 6、有没有自动生成代码注释的小工具
中文版编写php代码的工具有那些?
1. Rephactor
Rephactor是一款命令行重构工具,这是一款自动化工具,允许开发者以一种简洁的方式在不同的代码库中修改源码。
主要功能:
保证重构的可逆性—— 一旦发现问题,代码是可逆的,可以回溯到前一个版本。
查找替换功能—— 普通查找替换,方法重命名,类重命名,正则表达式模式的替换。
所有操作完成后,均基于SimpleTest Aperiplus进行测试,并保证测试的覆盖率。
集成Phemto ,保证类的相关性测试。
2. Scisr
Scisr是一款利用PHP编写的重构工具。项目托管在GitHub上。基于GPL许可证下发行。
使用方法:
类的重命名:
[js] view plaincopy
$ scisr rename-class OldName NewName [files]
修改方法:
[js] view plaincopy
$ scisr rename-method OwningClassName oldMethodName newMethodName [files]
文件重命名:
[js] view plaincopy
$ scisr rename-file old/file_name new/dir/new_file_name [files]
重命名类和文件:
[js] view plaincopy
$ scisr rename-class-file OldClassName NewClassName [files]
3. PHP Refactoring Browser
这是一款PHP 代码的重构工具,通过生成diffs来描述重构的步骤,避免重构过程中的简单错误,该工具非常棒。项目托管在GitHub上。
使用库:
PHP Parser by Nikic
PHP Token Reflection from Ondřej Nešpor
重构浏览器数据主要包含以下几个方面:
补丁——支持基于更改文件操作创建补丁;
重构——包含实际重构域和适配第三方库;
集合——基于PHP数组可靠添加集合语义。目前包含一组类型。
4. PhpStorm
PhpStorm是由JetBrains公司开发的一款PHP IDE富应用,同时支持重构。PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化调试功能。
目前,发布了PhpStorm 7版本,新版本支持PHP5.5;改进PHP语法着色性能;Vagrant、SSH 控制远程工具;支持Drupal PHP框架;改进调试和测试性能。
PhpStorm的主要特性:
智能PHP编码编辑器;
代码质量分析;
支持调试/测试;
支持HTML/CSS/JavaScript编辑器;
支持跨平台。
5. Zend Studio
Zend Studio是Zend Technologies开发的PHP语言集成开发环境。支持HTML和JS标签,但只对PHP语言提供调试支持。
主要特性:
具备功能强大的专业编辑工具和调试工具;
支持PHP语法高亮显示、语法自动填充功能,支持语法自动缩排和代码复制功能;
支持书签功能;
内置一个强大的PHP代码调试工具;
支持本地和远程两种调试模式,支持多种高级调试功能。
thinkphp与yii 哪个更优秀,分别是哪些方面优秀
要回答分别是哪些方面优秀我们先要明白,框架是用来干什么的。
框架的作用:1、简化开发。2、提高工程的可维护性。3、规避编程语言本身的坑和陷阱。
那么我们就从这3个方面来讨论下着二者的优劣。
1、简化开发方面:从新手的视角来看(或者表面来看),thinkphp做项目更简单,因为其一提供了大部分web开发常用类库,其二中文手册写的很详细。但事实上,thinkphp有两个缺失的特性导致一旦项目做久或者稍微上规模,就会使人头痛不堪,这缺失的两个特性分别是:完整的AR支持以及完善的多层次模型
其次,web项目开发中大部分代码都是重复的,因此自动化代码生成工具是必不可少的,截至最新的tp3.2.3,我仍然没看到tp对自动化工具有任何支持的迹象
2、可维护性,缺失了完整的AR和多层次模型,代码不可能工整到哪里去,代码一多,源代码必然跟面条一样杂乱。最重要的时,TP没有unitTest,这导致重构都无门。同样,数据库方面,tp缺失了数据迁移工具,这都导致了项目后期维护由很大困难
3、规避编程语言本身的坑和陷阱:tp和Yii都是由PHP做的实现,PHP本身有很多的坑和陷阱,诸如混乱的语言结构与函数傻傻分不清的关系,变量转换的陷阱,凌乱不堪的类库命名。这些在yii里基本都得到了改善,Yii完全用面向对象的方式构建,常用web类库都以组件方式呈现,终于改善了PHP程序员边写代码边百度:‘XX功能该用哪个函数’的情况。反观TP,仅仅对常用类库封装成class,要用什么取什么,根本没做过精心的设计,完全像是一个多年的程序员攒了些类库,然后七拼八凑而成的一个框架,因此我常常说,thinkphp是个伪MVC框架。
Java开发工具哪个好
1.Eclipse
尽管IntelliJ IDEA、NetBeans和一些其他的IDE正在日益普及,但是有调查表明,Eclipse仍然是几乎半数Java开发人员首选的开发环境。 Eclipse是IDE领域的瑞士军刀,有着大量定制的接口和无数的插件。它无处不在,后面本文将推荐的其他所有工具都提供Eclipse插件。
Eclipse的工作流程可分为三个方面:工作台,工作空间和视角。工作台作为到IDE的出发点。工作空间将项目、文件和配置设置组合在一个单独的 目录下。视角定义工具、视图和有效设置。虽然新手开发人员可能会觉得相比Netbeans和IntelliJ IDEA,Eclipse使用起来更难,但Eclipse的灵活性,使其成为企业开发的首选IDE。
Luna,Eclipse的最新版本,支持Java 8、分屏编辑、新的黑色主题,以及一个功能齐全的命令行终端。
官方网站:
2.Gradle
Gradle是一个自动化项目工具,建立在Apache Maven和Apache Ant的功能上。虽然Gradle并不是最流行的构建工具(最流行的是Maven,64%的Java开发人员会选择它),但它的普及速度很快。它也可作为默认的Android构建工具。
Gradle引以为傲的是它的简单。Gradle使用Groovy编程语言,与Maven和Ant使用XML语法截然相反。一个基本的Gradle构建文件由一行简单的代码组成:
apply plugin: 'java'.
下面的命令会生成一个Gradle构建文件,创建项目文件的目录树,并附带一个项目便携式Gradle封装:
$ gradle init --type java-library
Gradle还有可用于添加新的语言,生成支持IDE的项目文件,构建本地二进制文档,检查依赖性更新等等的插件。
想要了解更多信息,请参见Gradle的Java / JVM入门指南。
官方网站:
3.Javadoc
Javadoc是Oracle提供的文档生成器。它可以将特殊格式的注释解析为HTML文档。以下截图就是Javadoc生成的Java SE 8 API规范:
Javadoc注释使用开放标签、关闭标签,以及一个或多个描述性标签的格式。开放式标签类似于标准Java多行注释标记,使用两个星号的除外。Javadoc也解析普通的HTML标签。
Javadoc自动格式化标签和关键字,除非另有规定。Javadoc广泛使用超链接,允许你参考和链接到代码的不同区域。许多IDE——包括 Eclipse——可以自动添加Javadoc注释模块到变量、类和方法中。支持Maven、Gradle和Ant的插件在编译代码的同时也可以构建 Javadoc HTML。
想要了解更多信息,请参阅Oracle关于如何为Javadoc工具写文档注释的文章。
官方网站:
4.JUnit
JUnit是用于编写和运行单元测试的开源框架。一个基本的JUnit测试包括测试类、测试方法、以及执行测试的功能。 JUnit使用标注来确定测试如何构造和运行。例如,如果你的程序有一个类叫做MathClass,具有乘法和除法的方法,你可以创建JUnit测试来检 查不符合预期的值。输入数字2和5到乘法方法,你希望得到的结果为10。当输入0作为除法方法的第二个参数时,你会期望给出一个数字计算异常的警告因为除 数不能为0:
@Test标注规定,MathClass方法是一个测试用例。 在JUnit提供额外的标注,比如@Before,这样你就可以在测试运行之前设置环境。 JUnit还可以设置规则用于定义测试方法的行为。例如,TemporaryFolder规则使得一旦测试完成,由测试创建的文件或文件夹就会被删除。
想要了解更多信息,请参考JUnit入门。 此外还有使用JUnit单元测试的教程。
官方网站:
5.Cobertura
Cobertura可用于分析Java代码的测试覆盖率。Cobertura根据没有被测试覆盖的代码生成基于HTML的报告。
Cobertura提供可用于插装、检查和测试代码的工具。通过监控可测试的代码,Cobertura允许你使用你选择的测试框架,甚至不需要测试框架就可以运行程序。
Cobertura根据行、分支和程序包三个方面给出代码覆盖报告。每个类别都有一个可自定义的阈值,如果覆盖面低于阈值,就会触发警告。Cobertura还集成了Maven和Gradle 的自动检测功能。
Mkyong.com提供了一个将Cobertura与Maven整合的示例。
官方网站:
6.FindBugs
FindBugs是一个匹配编译代码模式,而非使用bug数据库的工具。当提供源代码时,FindBugs还可高亮显示检测出bug的代码行。
在它的3.0.1版本中,FindBugs继续保持着数以百计的bug描述。根据bug的严重程度,FindBugs将bug分为四个水平:相关 的,令人困扰的,可怕的,以及最可怕的。除了图形用户界面,FindBugs还提供一个命令行界面,Ant任务,以及Eclipse插件。
官方网站:
7.VisualVM
包含在JDK中的VisualVM是监控和审查Java应用程序性能的工具。 VisualVM检测并重视活跃的JVM实例来检索有关进程的诊断信息。
VisualVM可以很容易地实时诊断性能问题。它提供了全套的分析工具,包括JConsole、jstack、jmap、jinfo和jstat等。此外,你还可以对JVM做一个快照,这样以后在任何时都能审查。
官方网站:
8.Groovy
Groovy是一种编程语言,通过添加新的关键字,自动导入常用的类,以及可选类型变量声明,既简化又扩展了Java。
Groovy的核心优势之一是它的脚本功能。类可以被编译为Java字节码或使用Groovy Shell动态执行。Groovy的Java基础使得它相较于Jython和JRuby更容易为Java开发人员所接受。
想要了解更多信息,请参见Groovy的入门指南。
官方网站:
自动化框架工具有哪些
1.模块化测试框架
在五种框架中,模块化框架是最容易掌握和使用的。在一个组件上方建立一个抽象层使其在余下的应用中隐藏起来,这是众所周知的编程技巧。这样应用同组件中的修改隔离开来,提供了程序设计的模块化特性。模块化测试脚本框架使用这一抽象或者封装的原理来提高自动测试组合的可维护性和可升级性。
2.测试库框架
测试库框架(Test Library Architecture)与模块化测试脚本框架很类似,并且具有同样的优点。不同的是测试库框架把待测应用程序分解为过程和函数而不是脚本。这个框架需要创建描述模块、片断以及待测应用程序的功能库文件。
3.关键字驱动或表驱动的测试框架
对于一个独立于应用的自动化框架,关键字驱动(KEYWORD Driven)I9LJJ试和表驱动(TABLE DRIVEN)测试是可以互换的术语。这个框架需要开发数据表和关键字。这些数据表和关键字独立于执行它们的测试自动化工具,并可以用来“驱动"待测应用程序和数据的测试脚本代码,关键宇驱动测试看上去与手工测试用例很类似。在一个关键字驱动测试中,把待测应用程序的功能和每个测试的执行步骤一起写到一个表中。
这个测试框架可以通过很少的代码来产生大量的测试用例。同样的代码在用数据表来产生各个测试用例的同时被复用。
4.数据驱动测试框架
数据驱动(DATA Driven),LJ试是一个框架。在这里测试的输入和输出数据是从数据文件中读取(数据池,ODBC源,CSV文件,EXCEL文件,ado对象等)并且通过捕获工具生成或者手工生成的代码脚本被载入到变量中。在这个框架中,变量不仅被用来存放输入值还被用来存放输出的验证值。整个程序中,测试脚本来读取数值文件,记载测试状态和信息。这类似于表驱动测试,在表驱动测 试中,它的测试用例是包含在数据文件而不是在脚本中,对于数据而言,脚本仅仅是一个“驱动器”,或者是一个传送机构。然而,数据驱动测试不同于表驱动测试,尽管导航数据并不包含在表结构中。
5.混合测试自动化(hybrid Test Automation)框架
最普遍的执行框架是上面介绍的所有技术的一个结合,取其长处,弥补其不足。这个混合测试框架是由大部分框架随着时间并经过若干项目演化而来的。
怎样利用 eclipse mybatis generator 自动生成代码
MyBatis中,可以使用Generator自动生成代码,包括DAO层、 MODEL层 、MAPPING SQL映射文件。
第一步:下载MyBatis的Generator工具
htt p:/ /mybati s.gith ub.i o/generator/
第二步:配置自动生成代码所需的XML配置文件,例如(generator.xml)
将这个文件保存至你下载的mybatis-generator-core-1.3.2文件夹下
第三步:进入XML配置文件(generator.xml)所在的的目录并执行命令:
Dos代码
java -jar E:\mybatis-generator-core-1.3.2\lib\mybatis-generator-core-1.3.2.j ar -configfile generator.xml -overwrite
mybatis generator eclipse插件的安装
打开eclipse,点击HelpSoftware Update
选择 "Available Software" 标签,点击 "Add Site" 按钮
输入以下信息:
Location:htt p:/ /mybatis.googleco de.c om/svn/sub-projects/gen erator/trunk/eclipse/UpdateSite/
点击ok,自动进入"mybatis generator Feature"
点击“install”按钮进行安装。。。。mybatis generator 插件安装完成
配置Mybatis Generator不要生成Example类
Mybatis Generator默认设置会生成一大堆罗哩罗嗦的Example类,主要是用各种不同的条件来操作数据库,大部分是用不到的,用到的时候手工修改mapper和接口文件就行了。
/codetable
schema="general"
tableName="tb_table_name"
domainObjectName="EntityName"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"
name="useActualColumnNames"
value="true"/
//codetable
这样生成的mapper和dao接口就清爽多了。
有没有自动生成代码注释的小工具
打开Sublime,并安装DocBlockr插件 打开Preferences - Package Settings - DocBlockr-Settings - User 并新建一个User配置文件,也可以直接将配置文件保存到"Default Settins" 将下面的代码保存到新建的User配置文件中.,如果是保存在“Default S