
ZDNET을 팔로우하세요: 우리를 선호 소스로 추가하세요 Google에서.
Claude Code를 사용하여 필라멘트 관리 앱의 iPhone 및 Mac 버전을 구축한 후에는 Apple Watch 구현이 나에게 이렇게 힘든 시간을 줄 것이라고는 전혀 예상하지 못했습니다.
그것은 분명히 상상력의 실패였습니다. 가장 필수적인 기능을 찾아서 아주 작은 Apple 화면에 맞게 만드는 과정은 꽤 어려운 일이었습니다.
또한: Claude Code를 믿고 iPhone 앱을 만들기 전에 알았더라면 좋았을 10가지
약 2시간 만에 대부분의 인터페이스를 설계하고 구현한 것은 사실입니다. 하지만 그것은 내가 뭔가를 할 수 있다는 것을 보여주는 프로토타입에 불과했습니다. 테스트 데이터가 아직 Xcode 시뮬레이터에서 올바르게 작동하지 않았습니다.
그러나 앱을 실제 시계로 옮기고 이미 iPhone 앱에서 수집한 120개 이상의 데이터 기록을 사용하여 작동시키려고 시도하자마자 앱 성능을 모니터링하는 Xcode 프로세스에서 약간의 붕괴가 발생했습니다.
iPhone과 Mac 앱을 모두 시작했을 때 최종 제품에 원하는 특징과 기능에 대한 매우 명확한 아이디어가 있었습니다. Apple Watch에서 어떤 기능이 작동할지 정확히 확신할 수 없었습니다.
분명히 NFC 스캔 및 사진 촬영은 옵션이 아닙니다. 어떤 기능이 중요했고 어떤 기능을 생략할 수 있나요? Apple Watch 앱을 만드는 것은 뺄셈에 관한 것이 전부였습니다.
당신은 아마도 미켈란젤로가 자신의 조각품을 묘사한 방식에 익숙할 것입니다. 그는 자신의 조각품이 이미 대리석 안에 존재했으며, 그의 임무는 단순히 남은 돌을 제거하여 조각품을 드러내는 것이라고 말한 것으로 유명합니다.
이것이 바로 Apple Watch 앱의 정신입니다. 앱은 iPhone에 존재하지만 작은 화면에서 실행할 수 있도록 하려면 충분한 코드를 제거해야 합니다.
또한: Claude Code는 6개월 만에 10억 달러라는 놀라운 수익을 올렸습니다. AI로 코딩된 내 iPhone 앱이 그 이유를 보여줍니다.
이번에는 Claude Code에게 기능에 대한 추천을 요청하는 것부터 시작했습니다. 나는 "나는 Apple Watch 앱을 만들고 싶습니다. 분명히 NFC도 없고 사진도 찍지 않는 iOS 앱의 아주 작은 하위 집합이어야 할 것입니다. 프로젝트와 그 용도에 대해 생각하고 Apple Watch 앱의 기능과 성능을 나에게 제안하십시오."라고 말했습니다.
클로드는 꽤 좋은 일을 해냈습니다. 필라멘트가 얼마나 남았는지 표시하기 위해 시계 컴플리케이션(시계 홈 화면의 작은 아이콘)을 만드는 아이디어에 약간 흥미를 느꼈습니다(그러나 수백 개의 스풀이 있기 때문에 그것은 도움이 되거나 유용한 기능이 아니었습니다). 또한 주어진 스풀에 얼마나 많은 필라멘트가 있는지에 대한 스마트 추적 방법이 없거나 필요하지 않습니다. 기억할 때 그리고 대략적인 필라멘트 비율을 표시할 만큼 관심이 있을 때 간단히 데이터베이스를 업데이트합니다. 아마도 전체 앱에서 가장 덜 중요한 기능일 것입니다.
시계 컴플리케이션에 대한 Claude의 집착을 극복한 후 사용 사례에 대해 논의했습니다. 나는 내 시계를 보고 특정 3D 프린터에 무엇이 로드되어 있는지 확인하고 싶었습니다. 저는 휴대폰을 Fab Lab에 가져오지 않은 경우를 대비하여 Apple Watch만 사용하여 한 위치에서 다른 위치로 스풀 이동을 기록할 수 있기를 원했습니다. 그리고 제가 계획하고 있는 프로젝트에 어떤 색상과 재료가 있는지 빠르게 검색할 수 있기를 원했습니다.
제가 마침내 시계 작업을 하기로 결정한 것은 다음과 같습니다.
이는 다음을 포함하여 많은 것을 생략할 것임을 의미했습니다.
기능 세트가 설정되면 Claude Code에게 앱 구축 작업을 맡겼습니다.
초기 빌드에는 테스트 데이터를 사용하고 Xcode에 내장된 시뮬레이터를 사용하여 앱 기능을 테스트했습니다.
홈 화면에 기계 버튼이 없습니다. 스풀을 나열하는 대신 해당 기능을 "인벤토리"라고 불렀습니다. 또한 아무 작업도 수행하지 않는 필터 버튼(화살표로 표시)도 구축했습니다.
마침내 스풀 기능이 작동하게 되었을 때 앱에 스풀 사용 비율이 표시되었으며 때로는 공급업체 이름이 첨부되기도 했습니다.
그런 다음 Claude는 표시되는 스풀 수를 처음 25개로 임의로 제한하고 싶었습니다. 앱의 전체 목적은 전체 스풀 목록을 볼 수 있도록 하는 것이라고 설명했습니다. 그런 다음 Claude는 25스풀 제한 없이 앱을 구현했습니다.
당시에는 AI도 나도 깨닫지 못했지만, 그 변화는 일시적으로 치명적이었다.
결국 모든 화면이 제대로 작동하게 되었습니다. 나는 인벤토리에 있는 스풀의 사진을 볼 수 있기를 원했습니다. 사진이 꽤 크네요. 기기에 저장하려면 많은 공간을 차지합니다.
내 Apple Watch Series 9에는 1GB의 RAM과 상당히 큰 64GB의 저장 공간이 있지만 기기에서 실행되는 모든 앱에서 이를 공유해야 합니다. 수백 장의 사진을 Watch에 가져오면 장치의 메모리 버퍼가 압도될 수 있습니다.
또한: Claude Code를 단계별로 설치하고 구성하는 방법
Claude에 따르면 Apple Watch iCloud 동기화는 데이터 구조의 모든 것을 한 번에 중단합니다. 제가 구현한 아키텍처에서는 사진이 요청될 때 한 번에 한 장의 사진만 가져올 수 없습니다.
Claude는 이를 허용하기 위해 모든 앱을 완전히 재설계하겠다고 제안했지만, 오랜 경험을 통해 작은 이점을 위해 큰 변화를 주면 광기(및 파손)로 이어진다는 것을 알게 되었습니다. 그래서 저는 Claude와 이 문제에 대해 논의했습니다(인간 프로그래머와 거의 같은 방식으로).
우리는 사진을 제외한 모든 것을 동일하게 유지하면서 기본 데이터 구조를 두 개로 나누기로 결정했습니다. 데이터 구조의 iPhone 및 Mac 버전에는 사진 참조가 포함되지만 Watch 버전에는 포함되지 않습니다.
Claude Code는 이를 구현했고 갑자기 Apple Watch 앱이 작동하게 되었습니다.
iPhone이나 Mac 앱 버전보다 Watch 앱 구축은 Claude Code와의 협업 경험이었습니다.
나는 의견을 물었고, 제안을 하게 하고, 그 제안을 테스트하고, 너무 멀리 갔거나 효과가 없을 때 수정한 다음 대화식으로 수정하고 반복했습니다.
Watch 앱이 앱 중에서 가장 작거나 왜냐하면 앱 중 가장 작기 때문에 생산적으로 사용할 수 있도록 개발하는 데 다른 두 버전보다 시간이 더 오래 걸렸습니다. 문제는 원래 아키텍처를 그대로 유지하면서도 Watch 장치의 한계에 맞게 고유하고 적합한 앱을 구축하는 것이었습니다.
또한: AI 코딩이 걱정되시나요? 전동 공구의 발명이 미래 경력의 청사진인 이유
이전에 언급했듯이 AI를 사용하여 코딩을 다시 시작하는 데는 한 줄씩 코딩할 때 항상 발생하는 스핀업 컨텍스트 전환 시간이 필요하지 않습니다. 따라서 전체 코드 아키텍처의 속도를 다시 파악하기 위해 며칠을 할당하는 대신 한 번에 20분 동안 프로세스에 참여하여 작업을 완료할 수 있었습니다.
Watch 구현에 매우 만족합니다. 저는 이를 3D 프린팅 프로젝트 작업 흐름의 일부로 사용하기 시작했습니다. 프로젝트 규모로 볼 때, 이 앱을 옛날 방식으로 만드는 데는 6~8주 정도의 작업 시간이 걸렸을 것이며, 아마도 주말을 기준으로 약 반년 정도 걸렸을 것입니다.
하지만 Claude Code를 사용하여 약 3주에 걸쳐 실제 시간으로 약 12시간 동안 Watch 앱을 작업했습니다. 처음 두 시간 동안은 실제 앱을 보고 신났고, 나머지 시간은 원하는 대로 개선하고 조정하는 데 보냈습니다.
코딩 지원을 위해 AI를 사용하기 전에 iPhone 및 Mac 앱을 직접 구축했지만 이전에는 Apple Watch 앱을 구축한 적이 없었습니다. Claude와 협력하여 나의 첫 번째 Apple Watch 앱을 개발하는 것은 생산성을 높이는 데 도움이 되었습니다.
또한: 초보자도 정말 분위기 있는 앱 코딩을 할 수 있나요? Cursor와 Replit을 사용해 알아보았습니다.
당신은 어때요? 실제 앱 개발을 위해 Claude Code와 같은 AI 도구를 사용해 보셨나요, 아니면 아직 고민 중이신가요? Apple Watch와 같은 제한된 장치에 어떤 기능이 속하는지 어떻게 결정합니까? 여러 기기에서 앱을 확장할 때 성능이나 데이터 동기화 제한에 직면한 적이 있나요? AI 지원 코딩이 이와 같은 프로젝트에 소요되는 시간을 의미 있게 변화시킨다고 생각하시나요? 아래 댓글을 통해 알려주세요.
소셜 미디어에서 저의 일상적인 프로젝트 업데이트를 팔로우하실 수 있습니다. 내 주간 업데이트 뉴스레터를 구독하고 Twitter/X에서 나를 팔로우하세요. @DavidGewirtzFacebook(Facebook.com/DavidGewirtz), Instagram(Instagram.com/DavidGewirtz), Bluesky(@DavidGewirtz.com), YouTube(YouTube.com/DavidGewirtzTV).