일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- UIKit
- mrc
- algorithm
- Swift디자인패턴
- Bubble Search
- ios면접
- IOS
- hackerrank
- ReactorKit UnitTest
- SWIFT
- 반응형프레임워크
- Swift코딩테스트
- 프로그래머스
- RxSwift
- 앱의생명주기
- iOS앱 디버깅
- Safari Inspector
- HackersRank
- Di
- firebase
- 코딩테스트입문
- TDD
- ARC
- 시험에자주나오는것만
- alamofire
- AutoLayout
- unittest
- RC
- firestore
- 카카오맵클론
- Today
- Total
목록iOS (61)
샘성의 iOS 개발 일지
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bgnrI0/btsGaxI84YO/45jaG2E4HcQn5Jj0FGduX1/img.png)
Inspector 사용 이유 앱 내에 띄운 WebView를 디버깅 할 때 Inspector를 사용한다. 해당 웹뷰가 띄워진 과정, 요청한 데이터 등을 확인할 수 있어 앱 내에서 웹뷰를 띄울 때 유용하게 사용된다. 예를 들면 필자는 네이버 로그인을 웹뷰로 구현하는 도중, 웹에서는 콜백 데이터를 넘겨주지만 앱에서는 해당 콜백 데이터를 받지 못하고 계속 흰색 빈 화면이 띄워지는 문제를 겪고 있었다. Xcode 디버깅으로는 웹 내 작업을 정확히 파악하기 힘들어 Inspector를 활용한 경험이 있다. 웹뷰 디버깅을 위한 Inspector 활성화 방법 iOS 16.4 버전부터는 WKWebView의 isInspectable 속성을 true로 설정해야 Inspector를 사용할 수 있다. if #available(i..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/qzKr5/btsAm6qDmPa/zWKgTQkDkHRHTreOeUNuBK/img.png)
개요 저번주에 HIG 스터디에서 Launching 부분을 주제로 공부하였다. 스터디에서 출시한 앱 중 한 앱이 ‘앱을 처음으로 설치 → 실행’ 경우 사용자 정보를 요구한 것이 떠올라 이를 회고하고 리펙토링 하기로 했다. 리펙토링 계획 우선, 해당 앱은 MVC 패턴, CoreData, Podfile, SPM등의 외부 라이브러리가 전혀 들어가있지 않은 상태이다. (심지어 네트워킹도 URLSession으로 함) 정보를 요청하는 화면 제거하기 MainVC에서 유저의 이름 부분을 터치 가능하도록 하기 유저 정보 없을 시에, "User"를 이름 대신 노출 터치시, 이름 등록 및 수정 하는 얼럿창 노출 지역을 나타내는 글자 옆에 버튼 추가하기 기본 날씨 제공 지역은 '서울'로 설정하기 버튼 터치시 CLLocation..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oEipl/btsngsupOce/JZKJkY9al06rWwwfvIbpv0/img.png)
1. 이진 탐색이란? 탐색할 자료를 두 파트로 나누어 둘 중 찾으려는 자료가 있는 파트를 탐색 하는 것. 탐색할 자료가 정렬이 된 경우에만 사용 가능하다. 2. 이진 탐색 살펴보기 이진탐색은 친구들과 많이 했던 업다운 게임의 원리와 동일하다 보면 이해하기 쉽다. 한번 어떤 원리인지 살펴보자. 1. 하단처럼 9개의 요소를 가진 정렬된 배열이 있다. 2. 해당 배열의 mid(중간 index의 값)을 추출한다. 3. 찾으려는 자료값이 mid보다 큰지 작은지 비교한다. (같을 경우 mid의 index를 return한다) 4. mid보다 큰 경우, 주황색 화살표 영역의 중간값과 다시 비교한다. 5. mid보다 작은 경우, 파란색 화살표 영역의 중간값과 다시 비교한다. 6. 2~5의 과정을 반복한다. 3. 이진 ..