일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Swift공부
- dfs
- 프로그래머스
- Kotlin
- Algorithm
- Level 1
- swift
- 파이썬
- greedy algorithm
- Android
- Autolayout
- Python
- 백준 온라인 저지
- 앱개발
- 그리디 알고리즘
- SwiftUI
- 안드로이드 공부
- ios
- iOS개발
- 알고리즘
- UIKit
- 공부
- 백준온라인저지
- 알고리즘 공부
- BFS
- 파이썬 풀이
- 오토레이아웃
- error
- Clean Architecture
- 정렬
- Today
- Total
목록UIKit (10)
Tori의 개발 공부
🛠 문제 상황WebSocket 서비스를 구현할 때, 서버 URL을 번들에서 가져와 초기화하는 과정이 필요했습니다.서버 URL은 연결을 위해 필수적이므로 init 과정에서 초기화하도록 설계하고 싶었습니다.하지만 번들에서 URL을 가져오는 과정에서 다음과 같은 문제가 발생할 가능성이 있었습니다.번들 내 plist 또는 설정 파일에서 URL이 누락되었을 경우가져온 URL이 유효한 형식이 아닐 경우URL을 가져오는 과정에서 예기치 못한 오류가 발생할 경우따라서init 과정에서 URL 유효성을 검사하고 문제가 발생할 경우 적절한 핸들링을 하도록 처리하여야 했습니다. ✅ 해결 방법WebSocket 서비스 클래스를 만들 때, 초기화 과정에서 URL 유효성 검사를 수행하고,문제가 발생하면 throws를 활용해 예외..
문제 상황프로젝트를 진행하면서 팀원들의 개발 일정 상 앱의 디자인을 어느 정도 진행 된 뒤 API 연결에 들어가게 되었다.그러다 보니 연결이 제대로 되었는지, 데이터는 제대로 받아오는지 확인하기 위해 클린아키텍처 구조 상 DataSource (API 연결부)부터 Repository, UseCase를 지나 Presentation 레이어의 뷰모델, 뷰 까지 모두 연결되어야지만 테스팅이 가능했다.그런데 이 때, 앱의 구현이 진행됨에 따라 프레젠테이션 레이어 연결 시 변경해줘야 하는 부분들이 점차 늘어났고, 테스팅 실패 시 최악의 경우 전체 구조를 변경해야 하는 경우도 있었다.따라서 이 부분에서 불편함을 느껴 단계별로 DataSource 의 API 테스트, Repository의 DTO -> Entity 변환 테..
ReactorKit을 사용하면서 state에서 Error를 받고 있었고 여러 UseCase에서 다양한 Error들을 내뱉는데 어떻게 관리를 해야 할까 고민이 있었다.한 개의 에러에 모든 에러를 몰아 넣을 수 없었다. 또한 NSError로 모두 정의하기에는 코드가 너무 지저분해 보였다.각 클래스마다 에러를 지정하고 싶었고, 내가 정의하지 못한 시스템 에러 또한 잡아주기를 원했다.그리고 각 에러마다 StatusCode와 간단한 설명이 있으면 좋겠다고 생각했다.따라서 각 클래스마다 LocalizedError 프로토콜을 준수하는 에러 값들을 만들고 statusCode와 errorDescription을 따로 선언해 주었다.예를 들면 다음과 같다 enum NaverLoginError: LocalizedError {..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/n7JbJ/btsIkDJctct/vEo999OrKckUGVR7Ur0OdK/img.png)
프로젝트를 진행하면서 디자이너 분께 디자인 시스템을 전달받았고, 그중에는 타이포그래피를 정리해 둔 폰트 시스템이 있었다. 폰트파일을 불러와서 커스텀 폰트를 사용한 것이 처음이 아니었기에 쉽게 생각하고 진행하였는데예상치 못한 오류를 발견하였다. 계속해서 폰트를 찾지 못하는 오류를 가져왔다.분명 나는 파일을 추가하고, 타겟을 설정하고, 인포 파일 설정까지 끝마쳤는데 왜 오류가 뜨는지 알 수 없었다.. 추가 과정에는 문제가 없었다ㅠ 디자인에 대해 얄팍한 지식을 가지고 있어서 마주친 문제였... 혹시라도 같은 상황을 마주친 사람들이 있다면 힌트를 주고자 정리를 해보았다. 우선 내가 마주친 상황은 커스텀 폰트 생성 시 폰트를 찾을 수 없다는 오류였는데보통 이러한 오류는 인포파일 설정, 혹은 타깃 설정, 파일을 제..