Xcode
-
iOS 앱 개발에서 버전과 빌드의 이해하기Apple🍎 2025. 4. 12. 21:05
iOS 앱을 개발하고 지속적으로 업데이트하다 보면 반드시 마주치게 되는 개념이 '버전'과 '빌드'입니다. 이 두 가지는 앱의 릴리스 관리에 핵심적인 요소이지만, 많은 개발자들이 그 차이점과 효과적인 관리 방법에 대해 혼란을 겪곤 합니다. 버전(Version)과 빌드(Build) 이해하기버전(Version)이란?버전은 사용자에게 보이는 앱의 '공개 식별자'입니다. 보통 세 개의 숫자로 구성된 형식(예: 1.2.3)을 사용하며, 이를 'Semantic Versioning'(의미론적 버저닝)이라고 부릅니다. iOS 앱에서 버전은 CFBundleShortVersionString 키로 Info.plist 파일에 저장됩니다.버전 번호의 각 부분은 다음과 같은 의미를 가집니다:Major(주 버전): 첫 번째 숫자로,..
-
Xcode가 저장 공간 다 잡아 먹는다.Apple🍎 2025. 3. 1. 20:17
혹시 그런 경험하신 적 없나요?? 이상하게 저장공간이 모자라는?아니 진짜 뭐 한 것도 없는데 도대체 내 소중한 저장공간을 누가 잡아먹었을 까요?범인은 바로 Xcode 이 녀석입니다!!!!!이 자식이 뭐 하느라 그렇게 저장 공간을 많이 잡아먹는지 파해쳐 봅시다. 개발자 항목의 오른쪽에 있는 인포 버튼을 누르면 다음과 같은 창이 뜨는데요. 여기서 각 항목을 선택해서 삭제할 수 있어요. 삭제하기 전에 각 데이터가 뭐 하는지는 알아야겠죠?Xcode 캐시Xcode 캐시는 이전 빌드 정보를 저장하여 재빌드 시간을 단축시키는 역할을 합니다. 컴파일된 헤더 파일(PCH)모듈 캐시중간 빌드 결과물시스템 프레임워크 캐시프로젝트 빌드 데이터 및 인덱스빌드 데이터: 컴파일된 오브젝트 파일(.o), 중간 생성 코드, 리소스..
-
String Catalog를 이용한 LocalizationApple🍎 2024. 8. 26. 18:21
Localization 관련 설정Project > Info Localization 섹션Use Base Internationalization 옵션 사용 과정Use Base Internationalization 를 선택하면 개발시 사용한 문자열을 기초로해서 Localization 파일을 구성할 수 있습니다.다음과 같이 여러 View에서 사용한 String 문자열들에 대하여 Localization을 하기 위해서는먼저 String Catalog를 만들어야합니다.String Catalog 란? : 각 String에 대해서 각 언어별 번역을 제공하는 File 입니다.XCode의 Navigator 에서 Command + N (or 우클릭 + New File)String Catalog 선택 Localizable을 ..
-
데이터 모델 개념을 기초로 엔티티와 클래스 관계 알아보기Apple🍎/CoreData 2024. 1. 9. 00:53
Entity와 Attribute는 대응하는 Class와 Property가 생긴다. 보통 Core Data의 엔티티와 엔티티의 속성을 설정할 때는 Code Data Model Editor를 사용해왔다. 여기서 Entity를 설정하면 실제 코드로는 어떻게 구현되는 것일까? Generated Classes 데이터 모델안에서 엔티티와 속성이 어떻게 구성되는지 간단히 말하면 Editor에서 설정한 엔티티와 속성에 대응하는 클래스와 프로퍼티가 코드로 생성된다. How Is your Data Model Really Created. Core Data Editor를 사용하여 엔티티와 속성을 만들면 데이터 모델은 정적이고 (컴파일 타임에 이미 모두 정해지고) 런타임에는 더이상 건들지 못한다고 생각할 수 있지만 Core D..
-
TDD가 뭔지 한번 해보기Apple🍎/Test 2023. 12. 15. 23:15
TDD 워크 플로우 - Red, Green, Refactor Red 요구사항에 대해 실패하는 테스트를 작성하는 것으로 시작 원하는 기능과 엣지 케이스 대해 아직 구현하지 않은 상태 돌려서 IDE에서 빨간불 확인하기 작성한 테스트가 처음에는 실패하는지 확인하는 것은 테스트가 정상적으로 작동하는지를 확인하는 중요한 절차이다. 항상 성공하는 의미없는 테스트거나 이미 원하는 기능이 구현되어 있지는 않은지 확인하는 절차. Green 테스트를 간신히 통과할 수 있을 정도로만 간단하게 코드를 작성. 이 단계에서는 코드의 퀄리티를 신경쓰지 않고 일단 기능 구현에만 집중. IDE에서 파란불 확인할 때까지 진행. 테스트 통과가 가능한 가장 간단한 코드를 작성함으로써 기능 구현을 위해 진짜 필요한 부분만 작성하게 된다. 읽..
-
IOS 단위 테스트 살짝 맛보기Apple🍎/Test 2023. 12. 13. 23:21
Unit test 예제 Xcode 실행 -> File | New | Project. iOS | Application | App 에서 Next ProductName : FirstDemo / Interface : Storyboard / Language : Swift Include Tests 체크 Next FirstDemoTests 폴더에서 FirstDemoTests.swift 선택해서 editor에 띄우기 가장 먼저 test framework와 test의 대상이 되는 target을 import 해주어야한다. 모든 test case는 XCTest 프레임 워크의 import가 필요하다. XCTest는 XCTestCase 클래스와 Assertion을 정의한다. Test의 대상이 되는 모듈인 FirstDemo를 i..