Swift는 객체 지향적인 언어이다. 무슨 소리인가?
예를 들어 Python 이랑 비교를 해보자, 굳이 print 라는 함수를 만든다 // Python def customPrint(arg): print(arg) 이렇게 쓸 수 있다. 만약에 Swift로 바꾼다면 // Swift func customPrint(_ arg: T) { print(arg) } 하지만 이렇게 안쓴다.
보통이런 함수를 자유 함수(Free Function)이라고 부르는데 객체 지향인 Swift에서는 보통 이렇게 쓸 것이다 class Object { func customPrint(_ arg: T) { print(arg) } } let ob = Object() ob.customPrint("hello") 보통은 저렇게 객체를 생성을 하고(instance), 메소드(객체안에 있는 함수)를 부른다. 이런 식으로 쓰는 것이 객체를 지향하는 언어 Swift이다.
그럼 실제로 객체 지향은 무엇인지 알아보자. 1. 추상...