我重构了我的旧代码并想根据 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 个功能,我认为它看起来会很乱)。
最好的方法是什么(不包括重复课程)?是否有可能创建一些通用装饰器?
谢谢。