무슨 일이 있었나요?
Swift 공식 블로그에서 IDE 지원 확장 계획을 발표했어요. 간단히 말하면, 그동안 Swift 개발은 사실상 Apple의 Xcode에서만 제대로 할 수 있었는데, 이제 VS Code나 다른 에디터에서도 훨씬 더 나은 Swift 개발 경험을 제공하겠다는 거예요.
이게 왜 중요한 소식이냐면요. Swift라는 언어 자체는 2015년에 오픈소스로 공개되면서 Linux와 Windows에서도 돌아가게 됐지만, 실질적인 개발 환경은 여전히 Xcode에 묶여 있었거든요. 코드 자동완성, 리팩토링, 에러 표시 같은 편의 기능들이 Xcode에서만 제대로 동작했으니까요. 이번 발표는 그 벽을 본격적으로 허물겠다는 선언인 셈이에요.
핵심 내용: SourceKit-LSP의 진화
이 이야기의 중심에는 SourceKit-LSP라는 도구가 있어요. LSP가 뭔지부터 설명하면 — Language Server Protocol(언어 서버 프로토콜)의 약자인데, 쉽게 말해서 "어떤 에디터에서든 특정 언어의 똑똑한 기능을 쓸 수 있게 해주는 표준 규약"이에요. 마이크로소프트가 VS Code를 만들면서 제안한 프로토콜인데, 지금은 거의 모든 주요 에디터가 지원하고 있어요.
원래 코드 에디터마다 각 언어를 지원하려면 별도의 플러그인을 처음부터 만들어야 했어요. 하지만 LSP가 있으면, 언어 쪽에서 LSP 서버 하나만 만들면 VS Code, Vim, Emacs, Sublime Text 등 LSP를 지원하는 모든 에디터에서 자동으로 코드 자동완성, 정의로 이동(Go to Definition), 심볼 검색, 리팩토링 같은 기능을 쓸 수 있게 되는 거죠. 레스토랑으로 비유하면, 예전에는 배달앱마다 메뉴를 따로 등록해야 했는데, 이제 하나의 표준 양식만 작성하면 모든 배달앱에 자동으로 올라가는 것과 비슷해요.
Swift의 SourceKit-LSP는 이전부터 존재하긴 했지만, 솔직히 Xcode의 네이티브 지원에 비하면 기능이 부족하고 안정성도 떨어졌어요. 이번 업데이트에서는 코드 자동완성의 정확도와 속도 개선, 매크로(macro) 지원 강화, 더 풍부한 리팩토링 기능 제공, 빌드 시스템과의 통합 개선 등 여러 방면에서 개선이 이루어지고 있어요. 특히 Swift 5.9에서 도입된 매크로 시스템은 코드를 컴파일 타임에 자동 생성해주는 강력한 기능인데, IDE에서 매크로가 생성한 코드를 제대로 인식하고 보여주는 게 개발 경험에 큰 영향을 미치거든요.
업계 맥락: 언어 생태계의 IDE 독립성 추세
이건 사실 더 큰 트렌드의 일부예요. 프로그래밍 언어들이 점점 특정 IDE에 종속되지 않는 방향으로 움직이고 있거든요.
Rust는 처음부터 rust-analyzer라는 LSP 서버를 핵심 도구로 밀었고, 이 덕분에 VS Code에서의 Rust 개발 경험이 아주 좋아요. Go 역시 gopls라는 공식 LSP 서버가 있어서 어떤 에디터에서든 일관된 경험을 제공하죠. TypeScript는 말할 것도 없고요. 반면 Swift는 이 부분에서 좀 뒤처져 있었어요. Xcode라는 훌륭한 IDE가 있으니까 크게 문제가 안 됐지만, 서버 사이드 Swift 개발이나 Linux에서의 Swift 사용이 늘면서 Xcode 의존성이 걸림돌이 되기 시작한 거예요.
Kotlin도 비슷한 여정을 걸었어요. 원래 IntelliJ IDEA에서 가장 잘 지원되지만, VS Code용 Kotlin 확장이나 LSP 기반 도구들이 점점 좋아지고 있거든요. 언어가 성장하려면 결국 개발자가 자기가 좋아하는 도구에서 편하게 쓸 수 있어야 한다는 게 업계의 공통 인식이 된 것 같아요.
한국 개발자에게 주는 시사점
한국에서 Swift를 쓰는 개발자 대부분은 iOS/macOS 앱 개발자일 텐데요, 이 분들에게 당장 큰 변화는 아닐 수 있어요. Xcode가 여전히 iOS 개발의 메인 도구일 테니까요.
하지만 주목할 만한 포인트가 있어요. 첫째, 서버 사이드 Swift에 관심 있는 분들에게는 정말 반가운 소식이에요. Vapor 같은 Swift 웹 프레임워크를 Linux 서버에서 개발할 때, 이제 VS Code에서도 제대로 된 개발 경험을 기대할 수 있게 되거든요. 둘째, AI 코딩 어시스턴트 시대에 LSP 지원이 좋아진다는 건 Copilot이나 Cursor 같은 AI 도구와의 연동도 더 좋아진다는 뜻이에요. 이런 도구들이 코드를 더 정확하게 이해할 수 있으니까요. 셋째, 혹시 맥북 없이 Swift를 배워보고 싶은 분이 계시다면, Linux 환경에서의 Swift 개발이 점점 현실적인 옵션이 되어가고 있다는 점도 알아두면 좋겠어요.
마무리
한줄 정리: Swift가 Xcode의 울타리를 넘어 모든 에디터에서 일급 시민(first-class citizen)이 되겠다는 의지를 보여주고 있고, 이는 Swift 생태계 확장의 중요한 전환점이 될 수 있어요.
여러분은 주로 어떤 에디터에서 개발하시나요? Swift를 Xcode 바깥에서 써본 경험이 있다면, 어땠는지 들려주세요!
🔗 출처: Hacker News
"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"
실제 수강생 후기- 비전공자도 6개월이면 첫 수익
- 20년 경력 개발자 직강
- 자동화 프로그램 + 소스코드 제공