Swift Any VS AnyObejct VS Generic

kyle Kim·2022년 12월 21일

Swift

목록 보기
3/3

오늘은 Any, AnyObject, 그리고 Generic의 차이점에 대해서 알아보겠다.

Any

Any는 모든 타입의 인스턴스를 표현해줄 수 있다. enum, class, 또는 struct를 내타내줄 수 있다. 그러므로 Reference 타입과 Value 타입 둘 다 사용할 수 있다.

AnyObject

AnyObject는 class 타빙의 인스턴스를 표현해줄 수 있다. class 타입이므로 Reference 타입을 사용해야할때 유리하다. 추가로 클래스 타입에 사용해야할 protocol에도 사용이 가능하다.

Generic

Generic은 function에서 사용되었을때 'T' 부분에 들어간 타입은 function이 끝날때까지 해당 타입을 유지한다. 그리고 enum, class, 또는 struct의 타입으로도 사용이 가능한데 이때도 마찬가지로 해당 타입을 유지한다.

결론

셋 다 용도는 비슷하지만 약간씩의 차이점이 있기때문에 정확하게 잘 활용한다면 좋은 코드를 만들기 좋을거같다.

profile
가고일(gagoil)의 개발일지

0개의 댓글