javascript - 自动化重构方案与实践
例如: 如何修改一下代码的方法名及其的调用?
#!/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
使用自动化重构类
python-rope [https://github.com/python-rope/rope]使用headless IDE
eclim
https://github.com/ervandew/eclim
我们通常用的是Jetbrains一系列的IDE,这一系列的IDE有WebStorm
(JavaScript), Intellij
(Java),Pycharm
(Python)等,这些工具都自带重构功能。像在Intellij中就有下面的一些重构选项,可以参考一下Martin的《重构》一书。
然后,你需要的这个功能应该是Rename
,快捷键是Shift
+ F6
1.选中test()
2.按下Shift + F6会弹出对话框
3.输入新的方法名
4.选择部份,或者全部需要修改的内容。
实习的时候写了一系列的文章介绍如何借助IDE重构: ThoughtWorks 实习记——重构与Intellij Idea初探
用图回复一下评论。。
重构自动化就是一个伪命题,要做自动化的时候,需要有明确的输入,明确的输出,期望的输出,这样你才能比较自动化的输出和你期望的输出是否一致
上一篇: 独家揭底广州传智播客PHP课程何以火爆
下一篇: php怎么让错误语句不报错
推荐阅读
-
JavaScript继承定义与用法实践分析
-
JavaScript数组特性与实践应用深入详解
-
JavaScript继承的特性与实践应用深入详解
-
Vue.js项目前端多语言方案的思路与实践
-
Appium+python实现微信小程序自动化的实践与探索,Appium+python实现APP自动化也同样适用
-
JavaScript设计模式与实践--工厂模式
-
JavaScript设计模式与开发实践——JavaScript的多态
-
《自动驾驶网络解决方案白皮书》研读(一):电信产业自动驾驶网络探索与实践
-
以友盟+U-Push为例,深度解读消息推送的筛选架构解决方案应用与实践
-
JavaScript高程第六章:继承-理解与实践