swift 언어의 특징과 objective-c언어가 여전히 필요한 이유
- swift의 history 요약
2019년 swift5가 나오기 이전까지는 swift는 second-class citizen 성격이었습니다. 이 말은 objective-c와 동일한 level의 언어로 생각하기 어려웠다는 것이죠. 그래서 iOS앱에는 swift를 objective-c로 번역하기 위한 라이브러리가 포함되었습니다. 하지만 swift5에서 ABI 안정성을 도입하여 iOS 10.2버전부터는 swift가 objective-c와 동일한 level로 자리잡게 되었습니다.
- swift의 특징
- swift는 훨신 가볍고 빠른 언어이며 코딩하기 쉽고 가독성이 높다는 장점을 가집니다.
- swift는 objective-c와 마찬가지로 Object 기반입니다.
- swift는 코딩할 때 모든 객체의 참조 타입을 확인할 수 있습니다.
- swift는 메모리 관리를 자동으로 해줍니다.
- objective-c 언어가 여전히 필요한 이유
swift로 코딩하는 것은 사실 문제가 전혀 없습니다만 Foundation과 Cocoa API는 여전히 C와 Objective-C로 작성이 됩니다. 이 부분을 이해하고 코딩하기 위해서는 Objective-C를 읽을 수 있을 정도는 되어야 합니다. 또한 Low-level로 들어갈 수록 많은 라이브러리들이 Objective-C로 되어있는 경우가 많고 실제로 코드 또한 C언어로 작성해야 하는 경우가 있기 때문에, 단순히 앱의 모양을 구현하는 것이 아니라 깊이 있게 이해하고 customizing하기 위해서는 Objective-C를 공부할 필요가 있습니다.