Swift 从另一个函数中调用一个函数并将同一参数传递两次是否是错误的做法迅捷3

Swift 从另一个函数中调用一个函数并将同一参数传递两次是否是错误的做法迅捷3,swift,conventions,Swift,Conventions,我不熟悉iOS开发,只想知道按照以下方式进行操作是否是一种不好的做法: func bigFunc(){ var parameter: String = "foo" firstFunc(parameter: parameter){ } func firstFunc(parameter: String){ let word: String = secondFunc(parameter: parameter) //do stuff with word } func

我不熟悉iOS开发,只想知道按照以下方式进行操作是否是一种不好的做法:

func bigFunc(){
    var parameter: String = "foo"
    firstFunc(parameter: parameter){

}

func firstFunc(parameter: String){
    let word: String = secondFunc(parameter: parameter)
    //do stuff with word
}

func secondFunc(parameter: String) -> String{
    return "bar"
}
而不仅仅是将参数设置为全局变量并在bigFunc()中调用这两个函数


谢谢

尽可能避免使用全局变量。最佳实践是将变量的可见性限制在所需的范围内,如果在该范围内创建全局变量,则该变量将在整个文件中可见,这可能导致变量名冲突等风险


但是,如果这三个函数实际上都是一个类的成员,您可以将其作为实例的属性,前提是您的“参数”是一个

这不是一个全局变量。事实上,我同意他编写函数的方式,因为它可以轻松实现测试驱动的开发。哦,我没有想到属性,因为我很少在Swift中涉及它们。谢谢编辑:啊,我确实在用TDD。@Chiquis这个答案并不是说问题的代码使用了全局变量。最后,问题是,使用globals是否更好。这个答案正确地指出了globals不是正确的解决方案。这个答案基本上指出问题中的代码是正确的。