인프런 커뮤니티 질문&답변

문희찬님의 프로필 이미지
문희찬

작성한 질문수

앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지

활용-7 앱 / 테이블뷰 만들기, MVC패턴으로 변환 (활용 앱58강)

함수 인자에 numberOfRowsInSection은 무엇인가요?

작성

·

399

1

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {     
    return moviesArray.count
}

section의 자료형이 Int인건 알겠는데 앞에 붙어있는 numberOfRowsInSection이 무엇인지 잘 모르겠네요. swift의 어떤 문법인지 알려주시면 좋겠습니다!

답변 2

0

문희찬님의 프로필 이미지
문희찬
질문자

아항 감사합니다

0

앨런(Allen)님의 프로필 이미지
앨런(Allen)
지식공유자

네 안녕하세요.

관련 문법은 함수 부분에서 찾아보실 수 있을 꺼예요.

관련 문법 이름은 아규먼트 레이블(argument label)입니다.
참고링크: https://jhnjslee.tistory.com/12

쉽게 말하자면, 함수를 정의할 때.. 파라미터에 또 하나의 "외부에서 보이는 파라미터 이름"을 지정할 수 있는 데.. 그걸 아규먼트 레이블이라고 합니다. 그러면.. 저 함수를 호출할때 외부에서는 section이 보이는 것이 아니고, numberOfRowsInSection만 보입니다. 그러면.. 함수 호출시 파라미터가 무엇을 할려는 목적인지 더 구체적으로 서술할 수 있으므로, (어떤 목적의 파라미터를 사용하고 있는 것인지 구체적으로) 헷갈리지 않게 함수를 호출할 수 있게 됩니다.

물론, 앞쪽에도 보시면

(_ tableView: UITableView,....)

이 부분도 아규먼트레이블을 사용하는 있는거예요. 다만, 언더바로 사용해서 아규먼트 레이블을 생략하고 있는 것입니다. 아규먼트 레이블을 생략하는 경우는.. (일반적으로) 반대로 이미 함수이름만 가지고도 파라미터가 명확하게 구분 되는 경우들 입니다.

 

감사합니다. :)

문희찬님의 프로필 이미지
문희찬

작성한 질문수

질문하기