IOS/Swift

[TIL] Swift. Class 1편
1. 기본 개념 Class란 구조체(struct)와 비슷한 것이다 관계가 있는 것들을 묶어서 표현 Object = Data + Method Object → Structure와 Class를 이용해 구현 Data → Property Method → Method Structure 메모리 관리 타입 -> Stack Fast - 당장실행 해야하거나, 컨트롤, 매니징 해야하는 것들 함수에서 변수를 만들면 스택에 생성되고 계산이 끝나고 리턴하게 되면 스택에서 제거 Class 메모리 관리 타입 → Heap Slow - Class같은 ref데이터를 저장하는데 사용합니다 Heap은 스택처럼 자동으로 데이터를 저장하지 않기 때문에 신경을 많이 써주어야한다. 변수선언시 힙과 스택의 변화 클래스 선언 → Heap 에 저장 변수..

[TIL] Swift. Method
1. 개념 메소드는 특정 타입과 연관된 함수입니다 클랫, 구조체 및 열거형은 특정 작업이나 기능을 캡슐화한 인스턴스 메소드와 타입 자체와 관련된 타입메소드를 정의 할 수 있습니다. 타입 메소드는 Objective-C의 클래스 메소드와 비슷합니다. Swift에서 구조체와 열거형을 정의할 수 있다는 사실은 C와 objective-C와의 주요한 차이점 입니다. Objective-C에서 클래스는 메소드를 정의할 수 있는 유일한 타입입니다. Swift에서는 클래스, 구조체 또는 열거형을 정의하는 여부를 선택할 수 있으며, 사용자가 만든 타입에 대한 메소드를 유연하게 정의 할 수 있습니다. 2. Instance Methods인스턴스 메소드는 특정 클래스, 구조체 또는 열거형의 인스턴스에 속하는 함수입니다. 인스턴스..

[TIL] Swift. Property
Property의 개념 Object = Property + Method Property는 객체의 데이터를 의미한다. struct professor: { let name: String let lecturename : String let studentCount : Int } Stored Property- 저렇게 스트럭쳐가 담고있는 데이터를 프로퍼티 라고한다. Computed Property - 어떠한 값을 직접 저장하지는 않고 저장된 정보를 이용해서 가공 혹은 계산된 값을 사용할때에 쓰게 됩니다, 스트럭쳐 안에 함수가 있을 경우 Type property - 생성된 인스턴스에 상관없이 그 스트럭트의 타입자체의 속성을 정하고 싶을때 사용하는 것. Property의 종류 1. Stored Property 객체가 ..

[TIL] Swift. Structure(Class, Struct, Enum)
1. Swift의 구조적 이점 속도 : 값타입은 시스템 리소스를 적게 먹는다 안정성 : 구조체는 근본적으로 기본값을 변형 시킬수 없기 때문에 코딩시에 안전한 코딩을 할수있다. 2. Class와 Struct의 차이점 import UIKit class ViewController: UIViewController { } 위 코드는 iOS 개발을 할때 가장 흔하게 볼수 있는 코드이다. 처음 시작할때는 그냥 이렇게 하는구나 라고만 생각했는데 블로그 내용을 보고 쉽게 구조를 파악할수 있어서 한번 정리하게 되었다. Class class로 선언된 ViewController는 UIViewController를 상속받는 것을 볼수있다. 상속 받는다는 것의 의미는 부모클래스에 있는 기능들을 자식클래스에서 쓸 수 있다는 것이다 ..

[TIL] Swift. Function Expression
1. 함수의 선언 기본형태 func 함수이름 (매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입...) -> 반환타입 { /* 함수 구현부 */ return 반환값 } func sum(a: Int, b: Int) -> Int { return a + b } 2. 반환 값이 없는 함수 func 함수이름 (매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입...) -> Void { /* 함수 구현부 */ return } func printMyName(name: String) -> Void { print(name) } func printYourName(name: String) { print(name) } 3. 매개변수가 없는 함수 func 함수이름 () -> Void { /* 함수 구현부..

[TIL] Swift. Collection
Swift는 많은 함수를 관리할수 있게 Collection이라는 기능이 있습니다 1. Array 순서에 따라 담을 수있는 상자라고 생각할 수 있다 담을 때에는 같은 타입의 데이터를 담아야 한다. 순서가 있는 아이템 아이템의 순서를 알면 유용할때 ex)) 신작영화의 랭크 가장 많이 쓰이는 배열 메서드 isEmpty : 비엇는지 판별 count : 몇개의 인덱스가 있는지 array[Int] : 해당 데이터에 접근하는 방법 for in 구문 : 배열안의 key와 value를 순서대로 받아올수 있는 방법 2. Dictionary 데이터를 담는 종류 배열과는 다르게 순서가 없습니다. 키는 유일한 값으로 정해야한다. 값을 의미단위로 찾을때 유용하다 키를 이용해서 값을 호출 for문을 이용할 때에도 순서가 일정하게 ..