[objc] Objective C와 함께하는 Legacy iOS 개발 및 유지보수에 대해서
iOS 개발할 때 대부분 Swift 언어를 쓸 텐데 눈물을 머금고 과거의 유물급인 Objective C 언어를 둘러보고 있는 개발자라면 십중팔구 오래전에 Objective C 언어로 개발된 프로젝트의 유지보수를 이어받은 개발자일 것이다. 레퍼런스를 찾기 위해 여러 군데를 뒤지는 게 위의 짤 같다.🥹
동료 개발자의 이야기를 들어봐도 내 경험상으로도 Objective C 언어는 이제 새로 나오는 서적도 없고 레퍼런스도 찾기 어려운 편이다. 특히, 웬만한 레퍼런스는 Swift로 나오기 때문에 결국 Swift에 대한 지식도 어느 정도 있어야 하면서 Objective C 언어에 대해서도 지식이 있어야 프로젝트의 개발과 유지보수 업무가 가능하다. (결국 둘 다 알아야 된다는 소리)
나는 요즘에 꽤 괜찮은 Objective C 서적을 구해서 읽고 있는데 저자의 설명 스타일도 그렇고 구닥다리인 Objective C를 꽤 모던한 스타일로 사용하려고 해서 흥미가 생긴 참이다. 아 물론… 흥미의 시작은 업무를 원활하게 하기 위한 내 욕심으로 시작한 업무시간 외 자기 계발에서 비롯되었다.
하지만 나처럼 특이한 케이스가 아닌 이상 iOS 개발에 뜻이 있는 개발자라면 Objective C 공부는 하지 마시라… Swift를 더 사용했으면 사용했지 점유율이 더 늘어나고 앞으로 비전이 보이는 언어는 아니다.
안드로이드 개발에 있어서 Java – Kotlin 과의 관계를 생각해 봐도 참 Objective C는 안습한 언어다. ㅠㅠ
Java는 뭐 말할 것도 없이 알아주는 언어고 배워두면 밥값 하는 언어.
Kotlin 은 내가 Java 프로젝트에서 라이브러리 작업도 해보고 안드로이드 개발도 했는데 상호 호환성 대박에 Kotlin Spring 도 걸출하고 생산성도 좋고 KMM이라는 나름의 비전도 있고 지금까지 해본 언어 중 제일 킹왕짱이다. 얘도 밥값 하는 언어.
근데 Objective C 언어를 배워서 어디다 쓸 것인가…?
해봤자 Legacy iOS 유지보수 아니면 쓸 일이 없고 이것도 수명을 길게 봐야 10년이나 될 거다.. ㅋㅋ 오래된 Objective C 언어로 작성된 라이브러리를 둘러보면서 깨달음을 얻는 정도 말고는 장점이 보이지 않는다.
그래도 나는 한다. Objective C… 이제 앞으로 포스팅에서는 objc로 줄여서 설명하겠다. 너무 길기도 하고 Swift에서 Objective C 코드를 쓰기 위한 어노테이션으로 @objc
를 사용한다. 줄임말로는 objc 만한 게 없는 것 같다.
앞으로 objc 서적을 읽으면서 간간히 괜찮은 내용 등 정리해볼까 한다.
게시물의 Feature Image가 macOS인 것은 신경 쓰지 마시라. 어차피 iOS 개발은 macOS에서 밖에 못하니까 딱히 틀린 이미지는 아니다.😅
objc가 별로 쓰는 사람도 없고 마이너 한데 그래도 하다 보면 재밌어요?🥹