Swift
-
Observable 혹은 Observable Sequence , Sequence와도 같은 말이다. 관찰 가능한 객체이며, 구독자가 이를 구독하여 “이벤트”를 받을 수 있다. 이벤트에는 3가지 종류가 있다. 이벤트의 전달 방향 : Observable -> Observer 이벤트의 관찰 방향 : Observable Disposable in observer(50) observer(.next(100)) observer() return Disposables.create() } 2. From 연산자를 이용한 생성 let observerble2 = Observable.from([-50, -100]) SubScribe Observable은 Observer에게 이벤트를 전달한다. 이 전달되는 시점은 observer가 o..
RxSwift (1) 주요 개념 (Observable , Subscribe, Disposable, Operator)Observable 혹은 Observable Sequence , Sequence와도 같은 말이다. 관찰 가능한 객체이며, 구독자가 이를 구독하여 “이벤트”를 받을 수 있다. 이벤트에는 3가지 종류가 있다. 이벤트의 전달 방향 : Observable -> Observer 이벤트의 관찰 방향 : Observable Disposable in observer(50) observer(.next(100)) observer() return Disposables.create() } 2. From 연산자를 이용한 생성 let observerble2 = Observable.from([-50, -100]) SubScribe Observable은 Observer에게 이벤트를 전달한다. 이 전달되는 시점은 observer가 o..
2023.05.17 -
스위프트에서 함수의 종류 스위프트에서 함수는 크게 두가지로 나눈다. 인스턴스 메서드와 타입 메서드이다. 그리고 타입 메서드는 다시 static method, class method로 나뉜다. Instance Method Type Method Static Method Class Method class ExampleClass{ func instanceMethod(){} // 인스턴스 메서드 class func classMethod(){} // 클래스 메서드 (타입 메서드) static func staticMethod(){} // 스태틱 메서드 (타입 메서드) } 모양을 보니 별다른 키워드 없이 일반적으로 사용하던것을 인스턴스 메서드라고 한다. 그리고 class 또는 static 키워드를 통해 정의된 함수를 ..
(Swift) 인스턴스 메서드 , 타입 메서드 (instance method, type method)스위프트에서 함수의 종류 스위프트에서 함수는 크게 두가지로 나눈다. 인스턴스 메서드와 타입 메서드이다. 그리고 타입 메서드는 다시 static method, class method로 나뉜다. Instance Method Type Method Static Method Class Method class ExampleClass{ func instanceMethod(){} // 인스턴스 메서드 class func classMethod(){} // 클래스 메서드 (타입 메서드) static func staticMethod(){} // 스태틱 메서드 (타입 메서드) } 모양을 보니 별다른 키워드 없이 일반적으로 사용하던것을 인스턴스 메서드라고 한다. 그리고 class 또는 static 키워드를 통해 정의된 함수를 ..
2022.03.08 -
접근 제어자란? 코드끼리 상호작용을 할 때 소스파일 간, 모듈 간 접근을 제한할 수 있는 기능이다. 이를 통해 특정 코드의 세부적인 구현은 숨기고, 허용된 기능만 사용하는 인터페이스를 제공할 수 있다. 🎯 모듈: 배포할 코드의 묶음 단위 (ex: 하나의 프레임워크, 라이브러리, 애플리케이션) , 쉽게말하면 `import` 를 통해 불러오는것들 🎯 소스파일: Swift 코드 파일 한개를 의미한다. 보통 파일 하나에 하나의 타입만 정의하지만, 여러개를 정의하는 경우도 있다. 그럼 왜 파일 간, 모듈 간 접근을 제한하나? OOP 패러다임의 “은닉화"와 관련이 깊다. 외부에서 보거나 접근하면 안되는 코드를 막기 위함이다. 🎯 은닉화: 객체 외부에서 객체 내의 자료로의 접근을 제한하고, 데이터를 수정하거나 조작하..
(Swift) 접근 제어자 (Access Control, Access Level)접근 제어자란? 코드끼리 상호작용을 할 때 소스파일 간, 모듈 간 접근을 제한할 수 있는 기능이다. 이를 통해 특정 코드의 세부적인 구현은 숨기고, 허용된 기능만 사용하는 인터페이스를 제공할 수 있다. 🎯 모듈: 배포할 코드의 묶음 단위 (ex: 하나의 프레임워크, 라이브러리, 애플리케이션) , 쉽게말하면 `import` 를 통해 불러오는것들 🎯 소스파일: Swift 코드 파일 한개를 의미한다. 보통 파일 하나에 하나의 타입만 정의하지만, 여러개를 정의하는 경우도 있다. 그럼 왜 파일 간, 모듈 간 접근을 제한하나? OOP 패러다임의 “은닉화"와 관련이 깊다. 외부에서 보거나 접근하면 안되는 코드를 막기 위함이다. 🎯 은닉화: 객체 외부에서 객체 내의 자료로의 접근을 제한하고, 데이터를 수정하거나 조작하..
2022.03.05 -
https://www.acmicpc.net/problem/3003 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 이 값은 0보다 크거나 같고 10보다 작거나 같은 정수이다. www.acmicpc.net let correctPiece = [1, 1, 2, 2, 2, 8] let intArr = readLine()!.split(separator: " ").map{Int($0)!} for (i,v) in correctPiece.enumerated(){ let answer = v - intArr[i] print(answer, separator: " ") }
(swift) - [백준/boj] 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰https://www.acmicpc.net/problem/3003 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 이 값은 0보다 크거나 같고 10보다 작거나 같은 정수이다. www.acmicpc.net let correctPiece = [1, 1, 2, 2, 2, 8] let intArr = readLine()!.split(separator: " ").map{Int($0)!} for (i,v) in correctPiece.enumerated(){ let answer = v - intArr[i] print(answer, separator: " ") }
2021.08.04 -
Collection - 1. Array (배열) Swift에서는 콜렉션 타입을 3가지 지원한다. Array Dictionary Set 콜렉션 타입도 var와 let으로 선언하며, let으로 할당하면 수정이 불가능하다. 1. Array(배열) Array의 생성 var someInts = [Int]() print(someInts) >>> [] //아직 빈배열 Array의 추가 someInts.append(2021) print(someInts) >>> [2021] // 2021 원소가 추가되었음 기본 값으로 배열 생성 Array(repeating : , count : ) var threeInts = Array(repeating : 120, count : 3) print(threeInts) >>> [120, 1..
(Swift) Collection - 1. Array (배열)Collection - 1. Array (배열) Swift에서는 콜렉션 타입을 3가지 지원한다. Array Dictionary Set 콜렉션 타입도 var와 let으로 선언하며, let으로 할당하면 수정이 불가능하다. 1. Array(배열) Array의 생성 var someInts = [Int]() print(someInts) >>> [] //아직 빈배열 Array의 추가 someInts.append(2021) print(someInts) >>> [2021] // 2021 원소가 추가되었음 기본 값으로 배열 생성 Array(repeating : , count : ) var threeInts = Array(repeating : 120, count : 3) print(threeInts) >>> [120, 1..
2021.07.13 -
Picker View PikcerView는 슬롯머신 형태이며 Wheel을 돌려서 데이터를 선택할 수 있는 기능을 제공한다. Date picker 와 Picker view는 비슷한 형태와 기능을 갖지만 구현할때는 큰 차이점이 있다. Date picker는 형태만 잡아주면 알아서 데이터를 가져오지만, picker view는 개발자가 직접 대부분을 구현해야한다. pickerView는 Delegate, Datasource를 지정해주어야한다. Datasource func numberOfComponents(in pickerView: UIPickerView) -> Int { return () } // 나타낼 돌림판의 개수(components)리턴 func pickerView(_ pickerView: UIPickerV..
(iOS) UIControl - Picker ViewPicker View PikcerView는 슬롯머신 형태이며 Wheel을 돌려서 데이터를 선택할 수 있는 기능을 제공한다. Date picker 와 Picker view는 비슷한 형태와 기능을 갖지만 구현할때는 큰 차이점이 있다. Date picker는 형태만 잡아주면 알아서 데이터를 가져오지만, picker view는 개발자가 직접 대부분을 구현해야한다. pickerView는 Delegate, Datasource를 지정해주어야한다. Datasource func numberOfComponents(in pickerView: UIPickerView) -> Int { return () } // 나타낼 돌림판의 개수(components)리턴 func pickerView(_ pickerView: UIPickerV..
2021.06.02