Search

(주말멘토상주) Cache 처리 특강 / 이력서 첨삭

분류
기타
생성 일시
2023/02/12 11:58
최종 편집 일시
2023/07/11 08:19
멘토링 요청시간
2023/02/12 20:00
최종 편집자
멘토링 신청자
담당멘토
손효주
강사용 질의응답
멘토FAQ(보조강사용)
배정상태
해결완료
번호
39
신청팀
주말상주
멘토링 완료시간
2023/02/12 21:30
비용지급
준비중
소요시간
1.5
작성자
손효주

멘토링 내용

Cache 처리 방법에 대해 알아보고, 직접 구현해봤습니다.
1.
Cache (캐시)란?
2.
iOS의 Cache
캐시의 종류
일반적인 캐싱 방법
3.
Cache 직접 구현해보기 (Image Cache)
Singleton을 적용한 ImageCacheManager 객체 생성
UIImageView extension 구현
1) 매개변수로 urlSring을 받음
2) 메모리 캐시가 있으면 해당 이미지를 적용
3) 메모리 캐시가 없으면 서버에서 받아오고 (비동기 처리), 메모리를 캐시에 저장
4) 해당 이미지를 적용
4.
라이브러리를 통해 Cache 정책 엿보기
<홈워크>
현재 진행중인 프로젝트에 Image Cache (메모리/디스크 캐시) 구현해보기
디스크 캐시 - FileSystem 활용해보기
// AlamofireImage > Source > ImageDownloader.swift let cacheDirectory = FileManager.default.urls(for: .cachesDirectory, in: .userDomainMask).first // Kingfisher > Source > DiskStorage url = config.fileManager.urls(for: .cachesDirectory, in: .userDomainMask)[0]
Swift
복사
URLCache 찾아보기 (메모리/디스크 캐시 선택적으로 구현 가능)
Kingfisher의 Cache 정책 찾아보기
NSCache와 Dictionary로 각각 캐시를 구성했을 때의 차이를 알아보기
이력서 첨삭
전공자답게 프로그래밍 관련 다양한 경험을 한 것이 인상적!!
전반적으로 깔끔하고 가독성이 좋아요!!
Notion 설정 > Full Width 해제하는게 좋음 (면접관이 이력서 확인 시 모니터 절반 너비로 볼 가능성이 큼)
Other Experience보다 iOS Projects를 상단에 배치하는게 좋을듯
iOS Projects 정리할 때 문제점/해결방법을 별도로 정리 (플젝당 2개 정도) -> 복잡한 문제를 끝까지 파고들어서 해결한 경험 적기. 면접에서 잘 물어봄
이력서에 대해 면접에서 나올 수 있는 질문
안드로이드 UX/UI에 비해 iOS는 어떤 것 같나요?
SOLID 원칙에 대해 예를 들어 설명해주세요.
동료에게 공유하며 함께 성장하는 것을 지향하게 된 계기가 있나요?
개발 중 경험한 문제 중에서 가장 해결하기 어려웠던 것과 어떻게 해결했는지 설명해주세요.
경험해본 아키텍쳐에 대해 설명해주세요.
Combine은 무엇이고 왜 사용하나요?