Programming/기타

함수와 메소드의 차이는?

devssun 2019. 6. 17. 23:35
728x90
반응형

함수와 메소드의 차이


야곰님의 Swift 문법책을 보다가 함수와 메소드의 차이가 적혀있더라구요
아니 함수랑 메소드가 다르다니;;;무슨 소리야 싶은데
뭐 그렇게 다른 것도 아닙니다. 같지만 다른 친구, 다르지만 같은 친구 그런거

밑에 코드에 적은 것 처럼 우리가 부르는 함수는 전역/지역 상관없이 사용하는 함수를 말하고
메소드를 클래스/구조체/열거형 등 특정 타입 안에 작성된 함수를 메소드라고 부릅니다.

함수/메소드는 각 위치나 범위에 따라 부르는 호칭이 달라지는 것이며 함수인 것은 동일합니다
그래도 분명한 차이가 있다는 것은 이번에 다시 알게되었네용
큰 범위로 함수라 할 수 있습니다

근데 iOS에서는 ViewController 생성 시 모두 class 타입을 가집니다

class ViewController: UIViewController {

ViewController 내부 안에 있는 클래스는 해당 클래스의 인스턴스가 생성되야만 사용할 수 있기 때문에
ViewController 내부에 적힌 함수는 모두 메소드라고 부릅니다.

func fooFunction() {
    print("전역/지역 상관없이 사용하는 함수를 함수라고 부릅니다.")
}
 
class Foo {
    func varMethod() {
        print("클래스/구조체/열거형 등 특정 타입에 연관된 함수는 메소드라고 부릅니다")
    }
}
반응형