티스토리 뷰

반응형

올해 추석 연휴가 엄청 길다는 소식을 듣고 달력을 한번 확인해봤다. 10월 3일 개천절부터 시작해서 10월 9일 한글날까지 무려 7일이나 이어진다. 추석이 10월 6일 월요일이라 주말이랑 연결되고, 거기에 대체공휴일까지 포함되서 이렇게 긴 연휴가 만들어졌다고 한다.

솔직히 말하면 처음엔 어디 여행이라도 갈까 고민했는데, 요즘 항공권 가격이나 숙박비를 보면 추석 연휴 기간엔 답이 없더라. 그래서 이번엔 집에서 뭔가 의미있는걸 해보자고 마음먹었다.

클로드 AI 프로 구독을 결심하다

사실 몇달 전부터 AI로 코딩하는게 대세라는 얘기를 많이 들었다. ChatGPT도 써보고 코파일럿도 써봤는데, 최근에 클로드 AI가 코딩에 특화되어있다는 얘기를 듣고 궁금했다. 특히 클로드가 긴 대화 문맥을 잘 기억한다는 평이 많아서 한번 제대로 써보고싶었다.

그러던 중 추석 연휴가 길다는 소식을 듣고, "이때다" 싶었다. 평소에 만들고싶었던 iOS 앱이 하나 있었는데, 이번 기회에 클로드 AI의 도움을 받아서 만들어보기로 했다. 월 20달러면 한달 동안 무제한으로 쓸 수 있다고 해서 바로 구독 버튼을 눌렀다.

SwiftUI로 첫 iOS 앱 도전

나는 주로 웹 개발을 해왔고 iOS 개발은 거의 처음이었다. Swift 문법은 대충 알고있었지만 SwiftUI는 완전 초보였다. 근데 요즘은 SwiftUI가 대세라고 해서 바로 SwiftUI로 시작했다.

만들려고 한 앱은 간단한 할일 관리 앱이었다. 뭐 투두리스트야 엄청 흔한 예제긴 한데, 내가 원하는 기능들을 넣고싶었다. 특히 카테고리별로 관리하고, 완료한 항목들을 통계로 보여주는 기능까지 넣고 싶었다.

첫날은 Xcode 설치부터 시작했다. 생각보다 용량이 커서 다운로드 받는데만 한시간 넘게 걸렸다. 맥북 저장공간도 좀 정리하고... 이런저런 준비만 해도 오전이 다 갔다.

오후부터 본격적으로 클로드한테 물어보면서 시작했다. "SwiftUI로 할일 관리 앱을 만들고싶은데 어떻게 시작하면 좋을까?"라고 물었더니, 프로젝트 구조부터 기본 뷰 설정까지 친절하게 알려줬다.

벌어진 일들

처음엔 정말 순조로웠다. 클로드가 알려준대로 코드를 복사해서 붙여넣으니까 앱이 실행되더라. "오 이거 쉬운데?" 싶었다. 근데 문제는 그다음이었다.

첫번째로 막혔던건 데이터 저장이었다. CoreData를 써야하나 SwiftData를 써야하나 고민하다가 클로드한테 물어봤다. SwiftData가 더 최신이고 SwiftUI와 잘 맞는다고 해서 SwiftData로 선택했는데, 이게 문서가 생각보다 많이 없어서 시행착오가 좀 있었다.

특히 관계형 데이터 모델링하는 부분에서 에러가 계속 났다. 카테고리와 할일의 관계를 설정하는 부분이었는데, 런타임 에러가 자꾸 발생했다. 클로드한테 에러 로그를 보여주면서 물어보니까, @Model 매크로 쓰는 방식을 조금 수정해야한다고 알려줬다. 그대로 했더니 해결됐다.

두번째 문제는 UI였다. 디자인 감각이 없어서 그냥 기본 컴포넌트만 써서 만들었는데, 너무 밋밋하더라. 그래서 클로드한테 "좀더 세련된 디자인으로 만들고싶다"고 했더니, SF Symbols 아이콘도 추가해주고 색상 조합도 추천해줬다. 생각보다 괜찮아보여서 만족스러웠다.

세번째는 제일 애먹었던 부분인데, 리스트에서 항목을 삭제할때 앱이 크래시나는 문제였다. 처음엔 원인을 몰라서 한참 헤맸다. 로그를 보니까 뭔가 SwiftData 컨텍스트 관련 문제인것같았는데 정확히 뭐가 문젠지 모르겠더라.

클로드한테 상황을 설명하고 코드를 전부 보여줬더니, 삭제하는 시점의 문제라고 했다. onDelete 모디파이어를 쓸때 바로 삭제하는게 아니라 한템포 늦게 삭제해야 한다고 알려줬다. DispatchQueue.main.async로 감싸니까 해결됐다. 이런건 도저히 혼자서는 못찾았을것 같다.

연휴 5일차, 드디어 완성

결국 5일동안 매달려서 기본적인 기능은 다 만들었다. 할일 추가하고 삭제하고, 카테고리별로 보고, 완료한 항목 통계 보는 기능까지. 처음엔 3일이면 끝날줄알았는데 역시 개발은 항상 예상보다 오래걸린다.

근데 이 과정에서 클로드 AI가 정말 큰 도움이 됐다. 특히 에러가 났을때 에러 로그를 그대로 붙여넣으면 원인을 분석해주고 해결 방법을 알려주는게 너무 좋았다. 구글링 하면 한참 걸릴걸 몇분만에 해결할수있었다.

물론 클로드가 알려준 코드가 항상 완벽한건 아니었다. 가끔 오래된 방식을 알려주거나, iOS 버전이 안맞아서 deprecated된 메서드를 쓴 적도 있었다. 그래도 대부분은 제대로 작동했고, 안되는 부분은 다시 물어보면 수정해줬다.

추석 연휴를 보내며

이번 추석 연휴는 정말 의미있게 보낸것같다. 평소에 미뤄뒀던 iOS 개발 공부도 하고, 실제로 동작하는 앱도 만들어봤으니까. 물론 아직 앱스토어에 올릴 수준은 아니지만, 나한테는 의미있는 첫 iOS 앱이다.

클로드 AI 구독도 아깝지 않았다. 20달러로 이렇게 많은걸 배울수있다면 충분히 가치있는 투자라고 생각한다. 앞으로 한달동안 더 써보면서 다른 프로젝트도 진행해볼 생각이다.

내년 추석은 언제쯤 될까 벌써부터 궁금해진다. 그때까지 더 실력을 쌓아서, 다음 연휴때는 더 복잡한 앱을 만들어보고싶다. 어쩌면 실제로 앱스토어에도 올려볼수있지않을까.

이번 추석 연휴처럼 긴 연휴가 또 오면, 여러분도 평소에 해보고싶었던 개발 프로젝트에 도전해보는건 어떨까. 클로드 AI 같은 도구들을 활용하면 생각보다 훨씬 쉽게 시작할수있다. 중요한건 일단 시작하는 용기인것같다.

참고로 10월10일 금요일에 연차 하나 쓰면 10일 황금연휴가 된다고 하던데, 나는 이미 다 써버려서 못쓴다. 아쉽...

반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함