본문 바로가기

전체 글

(31)
iOS - Application 배포 iOS - Application 배포 배포 준비 앱 아이콘이 있어야 하고 앱 스토어에 등록할 아이콘(1024*1024) 이 준비되어 있어야함. 실행할 앱의 스크린 샷이 있어야 하는데, 크기가 정해져 있음. 시뮬레이터의 스크린 샷을 찍고 편집을 해서 해상도를 맞추어야 함. makeicon으로 앱 아이콘 작업은 가능하나 아래 시뮬레이터는 편집 skill이 필요함. 2. 개발자 사이트에서 App Store Connect로 접속. 상단의 메뉴 버튼을 눌러서 My Apps를 클릭. 3. + 를 선택해서 앱의 정보를 입력. (예: New App을 선택. 앱의 정보를 입력. iOS, name: drawing, language: (주로 영어로 하고 한국어를 보조로). 한국에서만 쓸 거면 Korean도 ok , bund..
iOS - CoreData iOS - CoreData - Executive Summary 앱의 데이터를 로컬에 저장하는 기법 중의 하나로 SQL을 이용하지 않고, 내부의 SQLite3를 사용할 수 있으며, 실행 할 때, 메모리에 모든 데이터를 적재해 놓고 사용하는 in MEMORY 방식의 데이터 관리 프레임워크 임. Core Data를 사용하고자 할 때는 애플리케이션 생성 시 use core data 옵션을 체크 이 옵션을 체크하지 않으면, core data 사용 객체를 직접 만들어서 사용해야 함. Core Data의 주요 용어: PersistencyContainer : 데이터 저장소의 개념으로 실제로는 SQLite DB를 이용하고, Documents 디렉터리에 .sqlite파일로 존재. 2. Data Model : Persist..
Swift - Comparison Operator (비교연산자) Swift - 비교연산자(Comparison Operator) 특징: 비교연산자는 모두 이항연산자, 결과는 항상 boolean(true or false) 형식임. 중요: 부호 두개면 값을 비교, 세개면 주소를 비교함. 비교한 조건이 맞으면 true 틀리면 false. 1.Equal to 연산자 (동등연산자) a == b 문자열 비교도 가능 “swift” == “Swift”// false 피연산자(operand)) 자료형도 일치해야 함. 2.Not equal to 연산자. a != b 두개의 값이 틀릴때 true가 됨. 3.Greater than 연산자 a > b 4. Greater than or equal to 연산자 a >= b 7 > 7 false 7 >= 7 true 5. less than a < ..
Swift - In Out Parameters (입출력 파라미터) Swift 입출력 파라미터. (In-out parameters) 새로운 변수 2개 선언 var num1 = 12 var num2 = 34 func swapNumber(_ a: Int, with b: Int) { var tmp = a a = b // error b = tmp // error } a 와 b는 임시상수임. 즉, 함수 바디에서 값을 변경 할 수 없음. swapNumber(num1, with: num2) 함수 본문에는 값형식이 복사됨. INT가 값타입이기 때문. 함수 바디에서 바꿔도 두 변수에 값은 바뀌지 않음. 파라미터가 상수이기 때문에 바꾸는 것도 불가능. 바꾸눈게 가능해도 복사본이기 때문에 INT로 전달한 값(원본)을 바꾸는게 불가능. inout parameter를 사용하면 아규먼트로 전달한..
Swift - Generics(제네릭) Generic Generic을 이용해 코드를 구현하면 어떤 형식에도 유연하게 대응할 수 있음. 제네릭으로 구현한 기능과 타입은 재사용도 쉽고, 코드의 중복을 줄일 수 있음. compile타임에 자료형을 결정하지않고, runtime때 자료형을 결정 Generic Function func swapInteger(lhs: inout Int, rhs: inout) { let tmp = lhs lhs = rhs rhs = tmp } swapInteger(lhs: &a, rhs: &b) 위에 함수는 Int형식만 받음. 다른 형식이 필요하면 개별적으로 함수를 구현해야 해서 코드 중복이 발생함. ----------------------------------------------------------------------..
Swift - Self & Super Self와 Super는 형식(자료형)에 기본적으로 추가되는 특별한 속성임. self // 인스턴스 자체 접근시 사용. 인스턴스 자신. self.propertyName // 인스턴스 속성에 접근(생략도 가능) self.method() // 인스턴스 메소드에 접근(생략도 가능) self[index] // 서브스크립트 접근시 self.init(parameters) // 동일한 형식에 있는 다른 생성자 호출시 사용. 셀프생략불가. self는 인스턴스에서 자동으로 추가됨. (형식에 기본적으로 추가되는 self.) 인스턴스멤버에서 접근하면 인스턴스에 접근. 타입멤버에서 접근하면 형식에 접근. self는 현재 인스턴스에 접근하기 위한 특별한 속성이다. 단, 타입멤버에서 사용하면 인스턴스가 아닌 형식 자체에 접근함. ..
Swift - 고차 함수 고차함수: 함수의 인자로 함수를 받거나 실행결과를 함수로 반환하는 것. Map: 자신을 호출할때 매개변수로 전달된 함수를 실행하여 그 결과를 다시 반환해주는 함수임. 배열, 딕셔너리, 셋에서 사용 가능. 맵을 사용하면 컨테이너가 담고 있던 각각의 값을 매개변수를 통해 받은 함수에 적용한 후 다시 컨테이너에 포장하여 반환됨. 기존 컨테이너의 값은 변경되지 않고 새로운 컨테이너가 생성되어 반환됨. 기존 데이터를 변형하는데 사용. for - in 구문과 별반 차이 없음. 비교. for-in 구문 let numbers: [Int] = [0, 1, 2, 3, 4] var doubledNumbers: [Int] = [Int]() var strings: [String] = [String]() for number in..
Swift - Optional(옵셔널) Swift Optional(옵셔널) - Optional은 Swift 언어에서 프로그램의 안정성을 높이기 위해 도입한 개념. - 기존 프로그래밍 언어를 가지고 작업을 할때 가장 빈번히 발생하는 예외 중의 하나가 NULLPointerException임. - NULLPointerException은 주로 변수(상수)메모리의 값을 할당 하지 않은 상태에서 해당 변수나 상수에 접근시 발생. - Swift에서는 이러한 Nullpointerexception을 방지하기 위해서 Optional형식을 도입. - Optioanl 형식은 nil을 저장할 수 있도록 자료형 * nil: 값이 없다는 뜻. - optional 자료형을 만들고자 하는 경우에는 변수를 선언할 때 자료형 뒤에 ?나!를 붙여서 만듬. - optional 자..