목록Programming Language/Swift (7)
091
1. 기본 설정 및 알아둬야 할 명칭- 새 프로젝트를 만들어서 iOS에서 앱을 누른 뒤 App을 선택해줍니다. 원하는 프로젝트 이름을 선택하고 조직에 대한 식별자를 부여하고 나면 이 앱이 가지게 될 고유 ID인 번들 아이디가 자동으로 만들어집니다. Storage는 None, Include Tests는 꺼주고 다음으로 넘어갑니다. 처음으로 뜨는 기본 사양은 특별히 지정할 설정이 없는 경우 건들이지 않습니다.- 왼쪽을 네비게이터(Navigator), 오른쪽을 인스펙터(Inspector)라고 하며, 프로젝트의 총 기능과 세부사항을 지정할 때 사용합니다. 2. 간단한 앱 제작하기(1) UI 구성하기 : Lable, Text Field, Button 만들기- cmd + shift + l을 눌러서 Objects를..
1. 클래스- Swift에서는 구조체와 클래스가 많은 공통점을 갖습니다. 하지만 클래스만이 고유적으로 할 수 있는 것이 바로 상속입니다.-> 클래스는 구조체에 비해 복잡성이 커서 상속과 같은 기능이 필요한 경우에만 만드는 것을 권장합니다. - Swift에서는 멤버 변수를 프로퍼티, 멤버 함수를 메소드로 부릅니다.-> 프로퍼티 종류• stored property(저장 프로퍼티) : 값을 저장하는 일반 변수입니다. 무조건 초기값을 가지고 있거나 초기화를 해줘야합니다.• computed property (연산 프로퍼티) : 다른 프로퍼티나 값으로부터 계산된 결과 반환하는 변수로, get과 set을 이용합니다. 값처럼 보이지만 내부적으로 함수처럼 동작하기 때문에 저장 공간 없이 읽을 때마다 계산해서 반환합니..
1. 1급 객체- 프로그래밍 언어 이론에서 1급 객체라는 건 다음 조건을 만족하는 객체를 의미합니다.1️⃣ 변수나 상수에 할당할 수 있다.2️⃣ 함수의 매개변수로 전달할 수 있다. 3️⃣ 함수의 반환값으로 사용할 수 있다. - Swift에서는 함수가 1급 객체입니다. 1급 시민이라고도 불립니다.1️⃣ 변수나 상수에 할당할 수 있다.func up(num: Int) -> Int{ return num+1}func down(num: Int) -> Int{ return num-1}let toUp = up //Swift 함수는 일급 객체로, 1️⃣변수나 상수에 저장print(up(num:10))print(toUp(10)) //argument label인 (num:)을 안 씀//함수를 변수에 할당하면 아..
1. 함수- 함수란 특정 작업을 수행하는 코드 블록입니다. Swift에서도 아규먼트(전달인자), 파라미터(매개변수), 리턴값 등의 용어를 사용하지만 아규먼트 라벨링을 하는 차이가 있습니다./* func 함수명(매개변수명: 매개변수 타입, 매개변수명: 매개변수 타입 ...) -> 반환값 타입 { 함수 코드 } */func sayHello() -> Void { print("Hello")}sayHello() //Helloprint(type(of: sayHello)) //() -> ()-> 함수를 선언할 때는 func을 사용해줍니다. Void는 빈 튜플이기 때문에 함수의 타입을 출력할 때 Void인 경우에는 ()(빈 튜플)이 출력됩니다. - Swift에서 오버로드를 할 때 신경하는 것은 함수의 시그..
2. 연산자- Swift 언어의 연산자는 다른 언어와의 차이가 거의 없습니다.-> 특정 언어에서 제공하는 거듭제곱 연산자(**)나 단항 증감 연산자(++,--)를 지원하지 않습니다.-> 비교 연산자에서는 메모리 주소를 비교해주는 === 연산자를 지원합니다.-> 논리 연산자의 경우 기호를 사용하는 언어입니다. ( !, &&, || )-> 삼항 연산자를 지원합니다. ( ? : ) - 범위 연산자에는 닫힌 범위 연산자와 반 열린 범위 연산자, 그리고 한방향 연산자가 있습니다.for i in 1...5 { //닫힌 범위 연산자 print(i,terminator:" ") //1 2 3 4 5}print()for i in 1.. - nil 병합 연산자는 ??로, '옵셔널 변수 ?? nil일 때 할당되는 값' ..
1. 옵셔널- Swift의 옵셔널 타입은 값이 가질 수도 있고 가지지 않을 수도 있는 타입을 의미합니다. C#의 Nullable 타입과 개념적으로 아주 유사합니다.(사용법에서는 미묘한 차이가 있음)var x : Int? = 123var y : Int = 123print(x, y) //Optional(123) 123print(type(of: x),type(of: y)) //Optional Intprint(Int("123")) //Optional(123) -> 오류가 발생할 가능성이 있는 값은 옵셔널 객체로 감싸서 반환print(Int(12.3)) //12print(String(123)) //123print(Int("Hi")) //nil, 아무값도 반환할 수 없음을 의미-> Optional을 지정하여 사용하..
1. 데이터 타입(자료형)- Swift에서는 명령문 뒤에는 세미콜론을 기본적으로 생략합니다. 한 줄에 여러 명령문을 나란히 쓰는 경우에는 구분용으로 세미콜론을 작성해야합니다.(권장하지 않음) - Swift에는 기본 자료형으로 Bool, Character, Int, Float, Double, String, Void이 있습니다. 구조체로 만들어있으며 대문자로 작성해줘야합니다. var myNum = 10 //타입 추론 -> 초기값이 있을 경우 이게 일반적임var myNum1 : Int = 10 //타입 어노테이션-> 초기값이 있는 경우에도 타입 어노테이션을 해주는 경우는 Float형이나 Character처럼 기본 자료형이 아닌 경우에만 해줍니다.var myFloat : Float = 3.14var myDoub..