gue*_*tli 7 refactoring legacy-code code-cleanup
我需要在一个庞大的遗留Python代码库中进行重构.
我常常认为"这些生产线不再在生产中执行".
但我不确定.
有一些测试触及这些线.但我无法确定生产中是否真的没有使用过.
在这种情况下我该怎么办?
这个问题涉及生产系统的覆盖范围.这个问题与测试/ CI期间的覆盖率无关.
我不想评论这些行,因为我不想在生产系统中产生错误.
常见的做法是在该代码行中使用日志记录。例如,您有一段您认为未使用的代码块。您在该代码块的开头添加 try catch 块。在 trycatch 中,您将行添加到与可疑代码块命名相同的特定 json 中。
try:
with open("block1.dat", "rb") as file:
activity = pickle.load(file)
curtime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
currentact = "dt = {}; code done that: var1 = {},
var2 = {}".format(curdate, var1, var2)
activity.append(currentact)
file = open("block1.dat", "ab")
pickle.dump(activity, file)
file.close()
except Exception: pass
Run Code Online (Sandbox Code Playgroud)
您可以使用 telegram api 来记录代码。一段时间后,您将获得有关代码运行频率及其用途的信息。然后你监控一段时间,如果一个月没有任何反应,你可以评论该区块。