[Swift] property vs. method

meredith·2022년 1월 10일
0

swift

목록 보기
8/8
struct Person {
  let firstName: String 
  let lastName: String
}

위와 같은 코드에서 Person에서 firstName 과 lastName을 합쳐 fullName을 얻고 싶으면 어떻게 해야할까?

단순히 생각할 경우, 크게 2가지를 생각할 수 있다.
1. computed property를 이용한다.
2. 두 개의 property를 합쳐 반환하는 메소드를 선언한다.

코드로 표현하면 1번은 이렇게 짤 수 있다.

struct Person {
  let firstName: String 
  let lastName: String
  
  var fullName: String {
    return "\(firstName) \(lastName)"
  }
}

2번 코드는 다음과 같다.

struct Person {
  let firstName: String 
  let lastName: String
  
  func fullName() -> String {
    return "\(firstName) \(lastName)"
  }
}

이렇게 코드로 비교하면 선언 방식만 다를뿐 리턴방식은 동일하다.

그럼 우리는 무엇을 써야할까?

우리는 단계적으로 이렇게 생각할 수 있다.

  1. Setter가 필요한가?
  • 네: Computed Property
  • 아니오: 2번 질문
  1. 계산이 많이 필요한가? 혹은 DB access나 File io가 필요한가?
  • 네: Method
  • 아니오: Computed Property

해당 글은 올인원 패키지 : iOS 앱 개발 강의 내용을 정리했습니다.

profile
해보자고 가보자고

0개의 댓글