일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- swift dfs
- 1 2 3 더하기 풀이
- ac 투포인터
- swift codility
- swift 백준 9095
- swift 2xn 타일링 풀이
- swift 9095 풀이
- iOS Charts
- ac swift 풀이
- 백준 2xn 타일링
- swift 연속된 부분 수열의 합 풀이
- swift 2xn 타일링
- swift 연속된 부분 수열의 합
- 백준 2xn 타일링 풀이
- rxswift
- swift gRPC
- swift ac 문제풀이
- ios
- swift
- swift ac
- swift 프로그래머스
- ac 구현 풀이
- 연속된 부분 수열의 합 swift
- swift 알고리즘
- swift algorithm
- 연속된 부분 수열의 합 투포인터
- MVVM
- swift 2xn 타일링 백준
- swift ac 풀이
- 123 더하기 풀이
- Today
- Total
목록
728x90
swift
728x90
반응형
(18)
boraBong
1. UICollectionView의 선택된 셀(아이템)을 표시하는 방법에 대해 알아보겠습니다. collectionView의 대리자가 잘 위임되었다면 우리가 cell을 클릭할(누를) 때마다 실행되는 메서드가 있죠! 바로 collectionView(didSelectItemAt:) 입니다. collectionView(didSelectItemAt:) 지정된 인덱스 경로의 항목이 선택되었음을 대리자에게 알립니다. 우리가 cell을 눌러 이 메서드가 실행되었을 때 우리가 누른 cell은 과연 선택된(isSelected) 상태일까요? cell이 눌렸음을(선택되었음을) 알릴 때 실행되는 didSelectItemAt 메서드 내에서 로그를 찍어보며 알아봅시다! func collectionView(_ collectionV..
프로그래머스 연습문제 Level2 "마법의 엘리베이터" 입니다. 참고할 Swift 관련 풀이가 적은 것 같아 풀이 방법을 공유합니다 🤗 ✅ 문제 설명 마법의 세계에 사는 민수는 아주 높은 탑에 살고 있습니다. 탑이 너무 높아서 걸어 다니기 힘든 민수는 마법의 엘리베이터를 만들었습니다. 마법의 엘리베이터의 버튼은 특별합니다. 마법의 엘리베이터에는 -1, +1, -10, +10, -100, +100 등과 같이 절댓값이 10c (c ≥ 0 인 정수) 형태인 정수들이 적힌 버튼이 있습니다. 마법의 엘리베이터의 버튼을 누르면 현재 층 수에 버튼에 적혀 있는 값을 더한 층으로 이동하게 됩니다. 단, 엘리베이터가 위치해 있는 층과 버튼의 값을 더한 결과가 0보다 작으면 엘리베이터는 움직이지 않습니다. 민수의 세계에서..
✅ map 클로저로 각 항목들을 반영한 결과물을 가진 새로운 배열을 반환합니다. // Declaration func map(transform: (T) -> U) -> Array [x1, x2, ... xn].map(f) -> [f(x1), f(x2), ... , f(xn)] // transform을 지원하는 클로저는 변경된 값을 반환하기 위해 해당 타입의 값을 반환해야 합니다. // 다음은 [1, 2, 3, 4]인 배열에서 2씩 곱한 배열을 얻는 예제입니다. let array = [0, 1, 2, 3] let multipliedArray = array.map( { (value: Int) -> Int in return value * 2 } ) // [2, 4, 6, 8] // map에서도 추론하여 코드를 ..
네트워크 기반에서 URL을 요청할 때 Data(contentsOf: url) 메서드보다 dataTask(with:completionHandler:) 메서드를 권장하는데요, 그 이유에 대해서 알아봅시다! 🍎 Data(contentsOf: url) → 동기적으로 데이터를 다운받는 방법 init?(contentsOf url: URL) Data(contentsOf: url) 메서드를 사용하여 data://URL을 NSData 개체로 변환합니다. 또한 짧은 파일을 동기적으로 읽는 데 사용할 수도 있습니다. ⚠️ 네트워크 기반에서 URL을 요청할 때Data(contentsOf: url) 메서드를 권장하지 않는 이유 Data(contentsOf: url) 동기식 이니셜라이저를 사용하여 네트워크 기반 URL을 요청하지..
2020 KAKAO BLIND RECRUITMENT에서 출제된 "괄호 변환" 문제입니다. 문제를 이해하는 것조차 어려웠던 문제이기도 하고,,, Swift 관련 풀이가 적은 것 같아 풀이 방법을 공유합니다 🤗 사실 카카오도 어렵다고 생각했는지, 문제에 구현 방법을 친절하게 안내해주었어요. 그래서 풀이에 해당 구현 방법을 주석으로 달아두었습니다! ✅ 문제 설명 카카오에 신입 개발자로 입사한 "콘"은 선배 개발자로부터 개발역량 강화를 위해 다른 개발자가 작성한 소스 코드를 분석하여 문제점을 발견하고 수정하라는 업무 과제를 받았습니다. 소스를 컴파일하여 로그를 보니 대부분 소스 코드 내 작성된 괄호가 개수는 맞지만 짝이 맞지 않은 형태로 작성되어 오류가 나는 것을 알게 되었습니다.수정해야 할 소스 파일이 너무 ..
[구조체와 클래스] 💡 구조체와 클래스가 뭔가요? 프로그래머가 데이터를 용도에 맞게 묶어 표현하고자 할 때 프로퍼티와 메서드를 사용하여 구조화된 데이터와 기능을 가질 수 있는 하나의 새로운 사용자 정의 데이터 타입을 만들어주는 것 스위프트에서는 구조체와 클래스의 모습과 문법이 매우 흡사하다. 💡 구조체와 클래스의 차이점? ✅ 구조체의 인스턴스 : 값 타입 ✅ 클래스의 인스턴스 : 참조 타입 ⇒ 조금 뒤에 덧붙여 설명 구조체 🏷️ 구조체는 “Struct” 키워드로 정의 구조체를 정의한다는 것은 새로운 타입을 생성하는 것과 마찬가지 → 기본 타입 이름 (Int, String, Bool 등) 처럼 대문자 카멜케이스를 사용하여 명명 → → 구조체 내의 프로퍼티와 메서드는 소문자 카멜케이스를 사용하여 명명 str..
3) 🔥 RxSwift 정복 1️⃣ 비동기로 생기는 데이터를 Observable로 감싸서 리턴하는 방법 2️⃣ Observable로 오는 데이터를 받아서 처리하는 방법 👍🏻 위 두가지만 잘 익혀두면 RxSwift를 정복한다고 합니다 :) :) 🙋🏻♀️🙋🏻♀️ 1️⃣ 비동기로 생기는 데이터를 Observable로 감싸서 리턴하는 방법 // 1. 비동기로 생기는 데이터를 Observable로 감싸서 리턴하는 방법 return Observable.create() { emitter in emitter.onNext("hello") emitter.onNext("world") emitter.onCompleted() return Disposables.create() } 일단 Observable.create()를 해..
📌 1.RxSwift를 사용한 비동기 프로그래밍 1) ✨ 유틸리티의 등장, RxSwift RxSwift를 사용하면 downloadJson(MEMBER_LIST_URL) .subscribe { json in self.editView.text = json self.setVisibleWithAnimation(self.activityIndicator, false) } ‘나중에오면’ 이라는 부분을 subscribe라고 쓰고 ‘나중에생기는데이터’ 라는 부분을 observable이라고 사용합니다. 그래서 observable을 만들어서 return을 하게 되는데! 👉🏻 이때 observable을 만들 때는 create라는 함수를 호출합니다. " Observable.create() " Observable.create()..