варианта 3:
1. func foo(arg: String){} - тут что внутри функции что при ее вызове - нужно использовать arg;
2. func foo(viewArg innerArg: String){} - тут при вызове будет указываться foo(viewArg:), а внутри будет использоваться inneArg;
3. func foo(_ innerArg: String){} - здесь функция вызывается без указания наименования аргумента foo("my string"), но внутри аргумент можно использовать под именем innerArg.