javascript - 自动化重构方案与实践

php中文网
发布: 2016-06-06 20:29:27
原创
1590人浏览过

如何进行代码的"自动化重构"
例如: 如何修改一下代码的方法名及其的调用?

#!/usr/bin/env python

def test():
    test = 'test()'
    print test[:-2]

test()
登录后复制

注:
1. IDE一般都有这样的功能, 这里希望的是自动化完成批量的操作.
2. 这里不考虑正则之类的方法, 例如代码中的同名字符串很容易会被替换掉.
3. 题主的实践是使的用python-rope [https://github.com/python-rope/rope]
来重构, 但是只找到修改变量的方法. 有没有有经验的提供一下方法或者其他类似工具.
4. 不一定局限于python 重构其他语言的工具也可以分享一下.
5. 这里的"自动化重构"是指, 不需要我手动进行操作. 当我编写好重构规则, 即可批量对某些项目进行重构. 类似python-rope

回复内容:

如何进行代码的"自动化重构"
例如: 如何修改一下代码的方法名及其的调用?

#!/usr/bin/env python

def test():
    test = 'test()'
    print test[:-2]

test()
登录后复制

注:
1. IDE一般都有这样的功能, 这里希望的是自动化完成批量的操作.
2. 这里不考虑正则之类的方法, 例如代码中的同名字符串很容易会被替换掉.
3. 题主的实践是使的用python-rope [https://github.com/python-rope/rope]
来重构, 但是只找到修改变量的方法. 有没有有经验的提供一下方法或者其他类似工具.
4. 不一定局限于python 重构其他语言的工具也可以分享一下.
5. 这里的"自动化重构"是指, 不需要我手动进行操作. 当我编写好重构规则, 即可批量对某些项目进行重构. 类似python-rope

  1. 使用自动化重构类
    python-rope [https://github.com/python-rope/rope]

  2. 使用headless IDE
    eclim
    https://github.com/ervandew/eclim

我们通常用的是Jetbrains一系列的IDE,这一系列的IDE有WebStorm(JavaScript), Intellij(Java),Pycharm(Python)等,这些工具都自带重构功能。像在Intellij中就有下面的一些重构选项,可以参考一下Martin的《重构》一书。

javascript - 自动化重构方案与实践

然后,你需要的这个功能应该是Rename,快捷键是Shift + F6

立即学习Java免费学习笔记(深入)”;

1.选中test()
2.按下Shift + F6会弹出对话框
3.输入新的方法名
4.选择部份,或者全部需要修改的内容。

javascript - 自动化重构方案与实践

网亚Net!B2B
网亚Net!B2B

网亚Net!B2B从企业信息化服务的整体解决方案上提供了实用性的电子商务建站部署,企业无需进行复杂的网站开发,直接使用Net!B2B系列,就能轻松构建具有竞争力的行业门户网站,如果您有特殊需要,系统内置的模板体系和接口体系,让网站可以按照自己的个性要求衍生出庞大的门户服务需求,网亚Net!B2B电子商务建站系统可以让您以希望的方式开展网上服务,无论是为您的客户提供信息服务,新闻服务,产品展示与产品

网亚Net!B2B 0
查看详情 网亚Net!B2B

实习的时候写了一系列的文章介绍如何借助IDE重构: ThoughtWorks 实习记——重构与Intellij Idea初探

用图回复一下评论。。

javascript - 自动化重构方案与实践

重构自动化就是一个伪命题,要做自动化的时候,需要有明确的输入,明确的输出,期望的输出,这样你才能比较自动化的输出和你期望的输出是否一致

相关标签:
java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号