일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Swift
- Unicode
- interpace
- Protocol
- struct
- property
- init
- Git
- String
- Terminal
- enum
- url
- 이니셜라이저
- delegate
- Xcode
- type
- Class
- initalizer
- 코딩테스트
- instance
- Method
- tuist
- extension
- optional
- initializer
- UIKit
- Foundation
- IOS
- 디자인패턴
- 스위프트
- Today
- Total
목록전체 글 (77)
아리의 iOS 탐구생활
# 문제 상황 Github API로 스타표시를 변경한 후 (PUT), 사용자의 스타 체크한 레파지토리 목록을 불러올 때 (GET), 업데이트 된 목록이 아니라 기존에 불러왔었던 Response를 불러오는 문제로 레파지토리 목록이 업데이트가 제대로 되지 않는 현상이였다. 정확히는 바로 새 데이터로 업데이트 되지 않고, 몇초 이후에 다시 네트워크 요청을 하여 재시도하면 새 데이터를 불러오는듯한 현상이였다. # 고민 해보기 왜 PUT 이후 GET을 요청했을 때, 업데이트 된 레파지토리 목록을 불러오는데 시간이 걸릴까? API 자체적인 문제인가? 포스트맨으로도 테스트 해보자! 정상이다. 혹시 리스폰스를 캐시처리 하나...? 기존에 요청해서 받았던 리스폰스가 캐싱되어 새롭게 업데이트 된 데이터를 불러오는 것이 아..
와.. 블로그글 너무 오랜만에 쓴다.. 맨날 코드에 이리치이고... 저리치이며 바쁘게 살면서...혼자 메모장이나 TIL에 끄적거리다가... '와, 이건 정말 꼭 포스팅해야해!!!' 라는 의욕이 솟구쳐올라서 작성하게 되었다. 다들 도움이 많이 되었으면 좋겠다는 마음으로... 열심히 적어봤다. 초보 개발자 화이팅!!!!!!! 📚 글을 읽기 전에 필요한 개발 지식 URLSession 의존성 주입(DI) Alamofire RxSwift (조금만 알아도 되요... 비중이 적음.) 유닛 테스트를 할 때, 라이브러리인 Alamofire는 어떻게 테스트하면 좋을까? 검색했더니 URLProtocol 타입을 이용해서, 네트워크 요청 결과를 Mocking해서 테스트를 하는 것 같다. 그렇다면 나도 도전...!!! 먼저 Al..
의식의 흐름대로 작성한 글입니다. 말많음 주의. 나는 2021년 7월에 퇴사를 하고 8월에 코드 스타터 캠프를 들어가 9월에 수료를 마치고, 10월에 커리어 스타터 캠프를 들어가게 되었다. 퇴사를 한 이유는, 전문직이 아니였기 때문에 누구나 입사하여 업무를 익히게 되면 충분히 할 수 있는 일이기도 했고, 7년이란 세월동안 다닌만큼 내가 있는 위치에서 더 나아가 성장하고 싶었는데, 나아가려면 영업쪽 일을 본격적으로 해야했다. 하지만 영업은 나와 안맞다는 생각이 들기 시작하여 회사를 다니며 약 6개월간 프로그래밍을 시작하기 위한 지식 찍먹을 하고 있었다. 그러다가 이렇게 찍먹만 하다가는 절!대! 전직 할 수 없다는 생각이 들게 되었고, 그렇게 퇴사를 결심하게 되었다. # 어쩌다가 야곰을? 처음엔 야곰이란..
앞서 스토리보드의 장단점을 살펴보자. # Storyboard 장점 ViewController 간 연간 관계를 한눈에 볼 수 있다 ViewController의 형태를 시각적으로 표현해줘서 UI가 어떻게 생겼는지 확인할 수 있다. 컨트롤 생성 시 Drag & Drop으로 간단히 생성할 수 있다. # Storyboard 단점 Git Marge 시 Storyboard에서 충돌이 발생함 스토리보드에 여러개의 ViewController가 추가되면 스토리보드 실행이 느려지고 심지어 Xcode가 멈춰버리는 일도 발생한다. 스토리보드로 협업이 불가능한 것은 아니지만, 위와 같은 단점들 때문에 스토리보드 사용을 피하게 된다. 따라서 이러한 문제를 해결하기 위해 2가지 방법을 많이 사용하게 된다. 스토리보드를 사용하지 않고..
테이블뷰나 컬렉션뷰나... didSelectRowAt 메소드가 호출되었을 때 화면전환을 해주고 싶으면 어떻게 해야하는지 알아보는 시간! 아래처럼 스토리보드에서 Segue를 생성해주자 이후 생성한 Segue를 클릭하고, 우측 인스펙터에서... 위와 같이 identifier를 지정해준다. 이후 코드로 돌아가서 Delegate 프로토콜을 채택해주고, didSelectRowAt 메소드를 호출하여 performSegue 메소드를 호출해주면 끝~ // 코드 예시~ extension ItemListViewController: UITableViewDelegate { func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { perfor..