【发布时间】:2012-08-12 19:07:19
【问题描述】:
我重构了我的旧代码,并想根据 pep8 更改函数名称。但我想保持与系统旧部分的向后兼容性(完全重构项目是不可能的,因为函数名称是 API 的一部分,并且一些用户使用旧的客户端代码)。
简单示例,旧代码:
def helloFunc(name):
print 'hello %s' % name
新:
def hello_func(name):
print 'hello %s' % name
但这两个功能都应该可以工作:
>>hello_func('Alex')
>>'hello Alex'
>>helloFunc('Alf')
>>'hello Alf'
我在想:
def helloFunc(name):
hello_func(name)
,但我不喜欢它(在项目中大约有 50 个函数,我认为它看起来会很乱)。
最好的方法是什么(不包括重复课程)?是否有可能创建一个通用的装饰器?
谢谢。
【问题讨论】:
标签: python refactoring