본문 바로가기

Swift의 모든것

[Swift의 모든것] 함수(Function)과 메서드(Method)의 차이

안녕하세요 ~!
개발을 하면서 Instance Method를 생성하다가... (뒤늦게 표현할 줄 아는 Instance Method...)
갑자기 "function과 method의 차이가 뭐지?"란 생각을 해보는데 머리에 물음표가 뜨는겁니다...
그래서 구글링을 해보고 ~ 이렇게 제 블로그에도 정리를 해보려고해요 !

함수(Function) : [클래스, 구조체, 열거형]과 무관하고 재사용 가능한 코드 뭉치
func greeting() {
   print("Hi")
}

greeting()

 

메서드(Method) : [클래스, 구조체, 열거형]에 속하는 함수 
//class, struct, enum 모두 해당
class Person {
   func greeting() {
      print("Hi")
   }
}

let friend = Person()
friend.greeting() // "Hi"

 

두 상관 관계가 포함 관계여서 더 헷갈렸던거 같아요 ! (= 함수가 클래스, 구조체, 열거형에서 선언되면 메서드)
게다가 iOS 개발은 거의 모든 함수들이 Class, Struct, Enum 내에서 선언이 되니까 두 차이에 대해 생각해 볼 겨를이 없었네요 ! 하핫

알고리즘 문제를 풀때라던가... Xcode의 Command Line Tool을 사용하다보면 메서드가 아닌 함수를 사용하게 된다는 것을 알 수 있습니다.
여기선 클래스/구조체/열거형 등을 선언할 일이 거의 없으니까요 ~? ㅎㅎㅎㅎ


이렇게 간단히 Function과 Method의 차이를 정리해봤습니다.
오늘도 좋은 하루 보내세요, 감사합니다 ~ :)