Danny의 iOS 컨닝페이퍼
반응형
article thumbnail
[iOS/Swift] inout 파라미터
Xcode/Swift 문법 2022. 12. 27. 16:43

inout 파라미터 함수의 파라미터는 기본적으로 값타입입니다. 파라미터는 임시 상수(let)이기 때문에 변경 불가능 하죠. 그러므로 아래와 같이 전역변수를 함수 안에서 그냥 변경할 순 없습니다. var firstInt = 10 var secondInt = 20 func swap(_ a: Int, _ b: Int) { var temp = a a = b b = temp } swap(firstInt, secondInt) // error: Cannot assign to value: 'a' is a 'let' constant // error: Cannot assign to value: 'b' is a 'let' constant 만약 inout 파라미터를 사용한다면 inout 파라미터는 함수 내에서 변수를 직접 변..

article thumbnail
[iOS/Swift] 타입에일리어스(typealias)
Xcode/Swift 문법 2022. 12. 27. 00:24

Type Alias 사용자가 원하는 이름으로 타입 이름을 만들어 줄 수 있습니다. 즉, 타입의 별칭, 약칭입니다. 가독성 상승. 새로운 타입으로 변경이 아니라 기존 타입의 역할만 해줍니다. 표현식 // 이름에서 첫 글자는 대문자 사용 typealias (사용할 이름) = (설정할 타입) // ex typealias NetworkService = Result typealias Calculator = (Double, Double) -> Double 사용법 간단하게, ThreeStr이라는 이름으로 3개의 String을 타입을 갖고 있는 튜플을 만들어 봤습니다. typealias ThreeStr = (String, String, String) let box: ThreeStr = ("과자", "인형", "Mac"..

article thumbnail
[iOS/Swift] “ = “ 의미
Xcode/Swift 문법 2022. 12. 26. 23:16

의미 오른쪽에 있는 데이터 값을 왼쪽의 데이터 공간에 저장한다. (담는다) var a = 1 var b = a + 7 // 1이란 데이터를 a라는 공간에 저장한다.(담는다) // a + 7란 데이터를 b라는 공간에 저장한다.(담는다) 서로 같다는 뜻이 아닙니다. 같다는 '== , 같지 않다는 '!=' 를 사용해야 합니다.

article thumbnail
[iOS/Swift] WeatherKit 사용법
Xcode/Framework 2022. 12. 24. 02:36

Certificates, Identifiers & Profiles 세팅 1. 인증서 클릭 애플 디벨로퍼 홈페이지로 들어가서 인증서로 들어가기 2. key 만들기 처음으로 키를 생성해줘야 한다. 사용할 기능(WeatherKit)에 대해서 체크 Register 버튼 클릭 Download 받은 걸 안전한 장소에 보관(한 번만 다운로드 가능하다) Key ID와 Apple ID는 만약 Web Token 생성이 필요할 때 사용. 3. App ID 만들기 Identifiers 클릭 Continue -> Select Typle : App 클릭 Bundle ID와 Xcode의 Bundle Identifier랑 같아야 한다 Xcode에서 기본 설정 Capability 클릭 WeatherKit을 추가해주면 사용 준비 끝 날..

article thumbnail
[iOS/Swift] CocoaPod 사용법
Xcode/Library 2022. 12. 21. 20:49

순서 1. 터미널에서 파일에 접근 2. pod init (pod 생성) 3. pod install (pod 설치) 4. install 후에 생성되는 하얀색 Xcode 파일로 들어가서 작업 5. 들어가보면 Pods 안에 루비모양이 생겼을 것이다. 루비안에서 사용하고 싶은 pod 작성 6. 다시 pod install 각각의 라이브러들의 메뉴얼 보면서 코딩하기! 버전 호환 설정법 // 콤마(,) 뒤에 '~> 원하는 버전' Pod 'Alamofire', '~> 4.4' // 4.4 버전 이상

article thumbnail
[iOS/Swift] ARC (Automatic Reference Counting)
Xcode 2022. 12. 21. 19:50

Swift에서는 자동으로 힙 영역의 메모리 관리해주는 ARC가 있습니다. ARC는 클래스 인스턴스가 더 이상 필요하지 않을 때 메모리를 자동으로 해제한다 ARC의 메모리 관리 객체(힙 영역)의 참조 횟수를 계산하여 RC가 0이 되면 자동으로 메모리를 해제합니다. 💡 RC: Reference Count == 이 객체를 참조하고 있는 숫자 참조 카운트 세는 법 Count Up +1 Count Down -1 강한 참조, 약한 참조, 비참조 강한 참조(Strong) default(기본) 값이 기본으로 강한 참조입니다. 순환 참조(Strong Reference Cycle): 영구적으로 메모리가 해제되지 않을 수 있어요. 힙 영역에서 서로가 서로를 참조할 경우 약한 참조(Weak) 오직 변수(var)에만 선언 가능..

article thumbnail
[iOS/Swift] 프로젝트 이름 변경
Xcode 2022. 12. 21. 18:39

1. 프로젝트 이름 변경 (폴더명도 같이 변경하기) 2. Rename 클릭 3. Manage Schemes 클릭 4. 이름 변경 (enter 필수) 5. plist 이름 및 번들 이름 변경 6. 만약 Capability로 (Entitlements) 설정도 해줬을 경우 파일은 삭제한 뒤 빈칸으로 만들어 준다. (자동 업데이트 됨)

article thumbnail
[iOS/Swift] FireBase 사용법
Xcode/Library 2022. 12. 20. 03:39

Package Manager Link 라이브러리 Firebase 추가하는 방법 1. 앱 등록 - Bundel Identifier와 동일하게 Apple 번들 ID 설정을 합니다 2. plist 다운 후 xcode로 이동시켜 주세요. 3. FireBase 라이브러리 설치를 합니다. 4. 초기화 코드 추가 사용자 인증 인증으로 들어가 원하는 로그인 방식 선택 (사용 설정 체크) 신규 사용자 등록 & 기존 사용자 로그인 ⭐️ FireBase에는 비밀번호 규칙이 존재한다 (6자리 이상) 신규 가입 시 - Auth.auth().createUser 기존 사용자 로그인 시 - Auth.auth().signIn 사용 Authentication 문서 Apple 플랫폼에서 Firebase 인증 시작하기 Cloud Fires..

article thumbnail
[iOS/Swift] Realm 사용법
Xcode/Library 2022. 12. 20. 01:44

Package Manager https://github.com/realm/realm-swift.git 글을 엉망진창으로 써놔 추후에 다시 깔끔히 정리해 올릴 예정입니다. 😓 간단 사용법 맛보기 1. AppDelegate에서 realm 생성 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { do { let realm = try Realm() } catch { print("Error initialising new realm \(error)") } return true } 2. 데이터 모델 제작 import ..

article thumbnail
[iOS/Swift] 라이브러리 주소
Xcode/Library 2022. 12. 20. 01:31

텍스트필드 레이아웃 (키보드에 맞춰서 올라가게 하기) https://github.com/hackiftekhar/IQKeyboardManager Alamofire https://github.com/Alamofire/Alamofire Firebase https://firebase.google.com/?hl=ko https://github.com/firebase/firebase-ios-sdk Realm Realm Swift SnapKit https://github.com/SnapKit/SnapKit Swipe Cell https://github.com/SwipeCellKit/SwipeCellKit 카멜레온 그라디언트 컬러 https://github.com/wowansm/Chameleon Swifty JSON ..

반응형