HIGLab — Apple 기술의 지도를 손에 넣다
애플 플랫폼 기술의 지도를 정리하며
앱을 만들다 보면, 어떤 문제를 만났을 때 자연스럽게 예전에 썼던 방법을 떠올리게 됩니다. 당연하게도 그 방법이 틀린 건 아닙니다. 동작도 하고, 이미 검증도 됐으니까요. 그런데 가끔은 "이보다 더 좋은 방법이 있었는데 내가 모르는 건 아닐까?" 하는 생각이 들 때가 있습니다.
iOS 개발을 하면서 이 생각이 가장 많이 든 순간들이 정말 많이 있었습니다. ShazamKit의 존재를 몰라서 음악 인식 로직을 직접 짰을 때, ActivityKit을 몰라서 Dynamic Island 연동을 못했을 때, Core Haptics를 몰라서 단순 진동으로 퉁쳤을 때. 실력이 부족해서가 아니었습니다. 지도가 없었던 겁니다.
HIGLab은 그 지도를 직접 만들어보겠다는 생각에서 시작했습니다.
왜 지도가 필요한가
Apple 플랫폼에는 367개의 프레임워크가 있습니다. 이걸 전부 깊이 공부하는 건 현실적으로 불가능합니다. 그런데 전부 알 필요도 없습니다. 문제는 "이런 게 존재한다"는 것조차 모르는 경우입니다.
더 좋은 방법이 있다는 걸 모르면, 더 복잡한 코드를 직접 짜거나 품질이 낮은 UX를 그냥 넘기게 됩니다. 기획 단계에서 가능한 것의 범위가 좁아지고, 결국 만들 수 있는 앱의 천장도 낮아집니다.
지도가 있으면 달라집니다. "이런 기술이 있구나"를 알고 있으면, 문제를 만났을 때 올바른 도구를 꺼낼 수 있습니다. 또한 문제를 해결하는 적절한 해결책을 연결하기도 쉬워집니다. 깊이는 그다음 문제입니다.
일상 속 예시로 이해하기
1. 음악 인식 — 직접 구현 vs ShazamKit
앱에서 주변 음악을 인식해야 하는 상황을 생각해봅시다. ShazamKit을 모르는 개발자는 오디오 버퍼를 분석하고, 주파수를 추출하고, 외부 API를 붙이는 방식으로 접근합니다. 꽤 복잡한 작업입니다. ShazamKit을 알고 있으면 SHSession으로 오디오를 넘기고 결과를 delegate로 받습니다. 핵심 기능을 하루 안에 붙일 수 있습니다. 존재를 알고 있느냐 모르느냐가 며칠의 차이를 만듭니다.
2. Dynamic Island — 포기 vs ActivityKit
실시간 정보를 Dynamic Island에 띄우고 싶은데 어떻게 접근해야 할지 몰라서, 혹은 복잡할 것 같아서 기획 단계에서 제외하는 경우가 많습니다. ActivityKit을 알고 있으면 이야기가 다릅니다. Live Activity를 구성해서 compact, expanded, minimal 상태를 각각 정의하고 실시간으로 데이터를 업데이트할 수 있습니다. 배달 앱에서 주문 상태를, 타이머 앱에서 남은 시간을 Dynamic Island에 자연스럽게 녹여낼 수 있습니다.
3. 진동 피드백 — 단순 진동 vs Core Haptics
버튼을 눌렀을 때 진동 피드백을 주고 싶을 때, UIImpactFeedbackGenerator로 충분하다고 생각하기 쉽습니다. Core Haptics는 다릅니다. 진동의 강도, 날카로움, 지속 시간, 패턴을 직접 설계할 수 있습니다. 문서만 읽어서는 이 차이를 절대 느낄 수 없습니다. 직접 실행해봐야 압니다.
HIGLab이 정리한 것들
367개 중 개발자가 실제로 마주칠 핵심 50개를 골라 다섯 개의 Phase로 묶었습니다.
App Frameworks는 SwiftUI, SwiftData, WidgetKit, ActivityKit, App Intents, Foundation Models처럼 현대 iOS 앱의 뼈대가 되는 기술들입니다. App Services는 StoreKit 2, CloudKit, HealthKit, Core ML처럼 앱을 살아있는 서비스로 만드는 것들입니다. Graphics & Media는 ARKit, Core Haptics, ShazamKit, PencilKit처럼 보고 듣고 느끼는 감각적 경험을 다룹니다. System & Network는 Core Bluetooth, CryptoKit, LocalAuthentication처럼 시스템 깊숙이 통합되는 기술들입니다. 마지막으로 iOS 26 신규 기술로 Foundation Models, Visual Intelligence, AlarmKit, EnergyKit 같이 Apple Intelligence가 본격화되는 새로운 흐름을 담았습니다.
각 기술마다 샘플코드를 먼저 만들었습니다. 그 다음에는 블로그로 보는 사람이 맥락을 파악할 수 있게하고, DocC 튜토리얼로 단계별로 따라할 수 있게 만들었습니다. 더 나아가 AI가 학습할 수 있게 AI Reference 문서를 함께 제공합니다.
AI가 학습하기 좋은 리소스로 만들기
요즘은 Claude같은 AI 도구를 켜고 개발을 시작하는 게 자연스러운 흐름이 됐습니다. 그런데 같은 AI를 쓰는데도 결과물이 천차만별인 경우를 많이 봤을 겁니다. 도구의 차이가 아닙니다. 무엇을 넘겨주느냐의 차이입니다.
AI는 맥락이 없으면 일반적인 답을 내놓습니다. "WidgetKit으로 위젯 만들어줘"라고 하면 동작은 하지만 Timeline Provider 패턴이 어긋나거나, Widget Family별 레이아웃을 전혀 고려하지 않은 코드가 나오는 경우가 많습니다. 반대로 해당 프레임워크의 핵심 패턴, 자주 틀리는 부분, 올바른 구조가 담긴 문서를 먼저 넘겨주면 이야기가 달라집니다.
이걸 의도적으로 설계하는 방법이 있습니다. 각 기술마다 AI Reference 문서를 만들어두는 겁니다. 공식 문서의 요약이 아니라, 이 기술을 쓸 때 반드시 알아야 하는 패턴, 흔히 놓치는 엣지 케이스, 올바른 데이터 흐름을 AI가 소화하기 좋은 형태로 정리한 문서입니다. 새 기능을 개발할 때 이 파일을 컨텍스트로 붙여주면 첫 번째 결과물의 품질이 눈에 띄게 달라집니다.
직접 써보지 않은 기술의 AI Reference는 만들기 어렵습니다. "어떤 부분에서 자주 틀리는지", "어떤 패턴이 올바른 건지"는 한 번이라도 직접 구현해봐야 알 수 있거든요. 결국 AI를 잘 쓰는 것과 기술을 직접 경험하는 것은 분리된 이야기가 아닙니다. AI가 잘 학습할 수 있는 리소스를 만드는 개발자가, 결국 AI와 가장 잘 협업하는 개발자가 됩니다.
관련 리소스
Apple Frameworks Overview — Apple 전체 프레임워크 목록을 확인할 수 있는 공식 문서입니다.
HIGLab — Apple 핵심 프레임워크 50개를 블로그, DocC 튜토리얼, 샘플 프로젝트, AI Reference로 직접 실습할 수 있도록 정리한 오픈소스 프로젝트입니다. m1zz.github.io/HIGLab
WWDC Session Videos — 매년 공개되는 Apple 개발자 세션으로, 새로운 프레임워크를 가장 빠르게 파악할 수 있는 방법입니다.