五款PHP代码重构工具推荐


Posted in PHP onOctober 14, 2014

在软件工程学里,重构代码一词通常是指在不改变代码的外部行为情况下而修改源代码。软件重构需要借助工具完成,而重构工具能够修改代码同时修改所有引用该代码的地方。本文收集了五款出色的PHP代码重构工具,以帮助你完善更加优秀的项目。

1. Rephactor

Rephactor是一款命令行重构工具,这是一款自动化工具,允许开发者以一种简洁的方式在不同的代码库中修改源码。

主要功能:

保证重构的可逆性—— 一旦发现问题,代码是可逆的,可以回溯到前一个版本。
查找替换功能—— 普通查找替换,方法重命名,类重命名,正则表达式模式的替换。
所有操作完成后,均基于SimpleTest Aperiplus进行测试,并保证测试的覆盖率。
集成Phemto ,保证类的相关性测试。

2. Scisr

Scisr是一款利用PHP编写的重构工具。项目托管在GitHub上。基于GPL许可证下发行。

使用方法:

 

类的重命名:

$ scisr rename-class OldName NewName [files]

修改方法:

$ scisr rename-method OwningClassName oldMethodName newMethodName [files]

文件重命名:

$ scisr rename-file old/file_name new/dir/new_file_name [files]

重命名类和文件:

$ 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šp

重构浏览器数据主要包含以下几个方面:

补丁——支持基于更改文件操作创建补丁;
重构——包含实际重构域和适配第三方库;
集合——基于PHP数组可靠添加集合语义。目前包含一组类型。

4. PhpStorm

五款PHP代码重构工具推荐

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代码调试工具;
支持本地和远程两种调试模式,支持多种高级调试功能。

PHP 相关文章推荐
PHP编程过程中需要了解的this,self,parent的区别
Dec 30 PHP
PHP生成excel时单元格内换行问题的解决方法
Aug 26 PHP
基于PHP读取TXT文件向数据库导入海量数据的方法
Apr 23 PHP
PHP常用数组函数介绍
Jul 28 PHP
Php连接及读取和写入mysql数据库的常用代码
Aug 11 PHP
自己写的php中文截取函数mb_strlen和mb_substr
Feb 09 PHP
PHP日期函数date格式化UNIX时间的方法
Mar 19 PHP
php删除数组中重复元素的方法
Dec 22 PHP
PHP的Yii框架中创建视图和渲染视图的方法详解
Mar 29 PHP
php使用curl通过代理获取数据的实现方法
May 16 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
Nov 05 PHP
详解关于php的xdebug配置(编辑器vscode)
Jan 29 PHP
ThinkPHP 表单自动验证运用示例
Oct 13 #PHP
php 模拟 asp.net webFrom 按钮提交事件实例
Oct 13 #PHP
ThinkPHP表单自动验证实例
Oct 13 #PHP
Linux下安装oracle客户端并配置php5.3
Oct 12 #PHP
PHP依赖倒置(Dependency Injection)代码实例
Oct 11 #PHP
php实现设计模式中的单例模式详解
Oct 11 #PHP
PHP实现设计模式中的抽象工厂模式详解
Oct 11 #PHP
You might like
linux使用crontab实现PHP执行计划定时任务
2014/05/10 PHP
php列出mysql表所有行和列的方法
2015/03/13 PHP
以JSON形式将JS中Array对象数组传至后台的方法
2014/01/06 Javascript
22点关于jquery性能优化的建议
2014/05/28 Javascript
jQuery实现自动调整字体大小的方法
2015/06/15 Javascript
JS中改变this指向的方法(call和apply、bind)
2016/03/26 Javascript
通过BootStrap实现轮播图的实际应用
2016/09/26 Javascript
原生javascript实现图片放大镜效果
2017/01/18 Javascript
react系列从零开始_简单谈谈react
2017/07/06 Javascript
js实现图片轮播效果学习笔记
2017/07/26 Javascript
JavaScript创建对象的七种方式全面总结
2017/08/21 Javascript
深入浅析JSONAPI在PHP中的应用
2017/12/24 Javascript
express+mockjs实现模拟后台数据发送功能
2018/01/07 Javascript
Servlet3.0与纯javascript通过Ajax交互的实例详解
2018/03/18 Javascript
微信小程序使用form表单获取输入框数据的实例代码
2018/05/17 Javascript
Express 配置HTML页面访问的实现
2020/11/01 Javascript
vue+element实现动态加载表单
2020/12/13 Vue.js
轻松实现python搭建微信公众平台
2016/02/16 Python
浅析PyTorch中nn.Linear的使用
2019/08/18 Python
详解Python绘图Turtle库
2019/10/12 Python
django列表筛选功能的实现代码
2020/03/27 Python
新建文件时Pycharm中自动设置头部模板信息的方法
2020/04/17 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
python爬虫判断招聘信息是否存在的实例代码
2020/11/20 Python
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
优质飞蝇钓和渔具:RiverBum
2020/05/10 全球购物
英语专业应届生求职信范文
2013/11/15 职场文书
办加油卡单位介绍信
2014/01/09 职场文书
生产部管理制度
2014/01/31 职场文书
团队经理竞聘书
2014/03/31 职场文书
国际商务专业求职信
2014/07/15 职场文书
公安领导班子四风问题个人整改措施思想汇报
2014/10/09 职场文书
2015年乡镇人大工作总结
2015/04/22 职场文书
房屋维修申请报告
2015/05/18 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js
VUE递归树形实现多级列表
2022/07/15 Vue.js