以前写函数,我喜欢逻辑判断后直接return退出程序。这样函数里就不会嵌套一层又一层if。程序看起来就可能是:
function (){
if(a):
return;
if(b):
return;
while():
if(c):
return;
}


后来很多编程规范里要求一个函数只有一个出口,不建议出口太多。虽然不太懂为什么,但我还是按编程规范的建议改了自己的习惯。这样每个函数只在最后一行return。

现在经常回头修改优化以前程序,就发现了函数统一出口的好处,虽然if可能多套基层,但是逻辑非常清晰。以前的习惯,嵌套虽然少,但冷不丁程序从哪里跳出了函数,跟踪程序逻辑很费力。特别是程序从循环中直接return出了函数,跟踪逻辑真是头痛。

所以我觉得统一函数只有一个出口还是挺好的一个编程规范。
展开
编程圈子于2022-01-16 04:24发布的图片
评论