Dart_13 : Named 매개 변수
* Dart의 function은 positional 매개 변수와 named 매개 변수가 있다.
선언 당시 매개 변수의 순서에 맞게, 호출할 때도 순서를 맞춰서 전달해야 한다. (순서가 중요함)
positional 매개 변수를 사용할때는 각각의 매개 변수 위치를 기억해야 하며, 각 매개 변수가 무엇을 의미하는지 잘 모르게 된다. 좋은 방법 x
함수를 선언하는 부분에서는 매개 변수에 중괄호를 넣어준다.
(name, age, country 변수에 null 값이 들어갈 수도 있으므로, dart에서는 null saftey 오류가 뜬다.)
호출하는 함수에서는 순서에 관계없이 argument(age, country, name)를 적으면 된다.
(순서는 더 이상 중요하지 않고 변수의 type을 맞춰야 한다.)
함수 호출 과정에서 위에 처럼 매개 변수를 전달하지 못하는 경우를 대비하여,
함수 선언 과정에서 default 값을 설정해주면 된다.
변수 앞에 required 키워드를 넣으면, sayHello가 호출될 때 반드시 name, age, country를 가져야 한다는 걸 dart가 알려준다.
그래서 위 함수 호출과정에서 어떤 매개 변수도 사용하지 않아서 오류가 생성되었고 Dart가 이 알려준다.
다음과 같이 함수 호출 과정에서 매개 변수를 써 넣으면, 오류가 사라진 것을 볼 수 있다.
* 요약 : function의 매개 변수를 전달 하는 방법은 positional 매개 변수와 named 매개 변수가 있다. positional 매개 변수의 불편함 때문에 named 매개 변수를 사용한다.
named 매개변수를 사용하는 2가지 방법, 첫 번째 null safety 때문에 default value를 넣어 만드는 방법. 두번째 required modifier를 이용하여 필수 값으로 정하여 만들 수 있다.