전체 글

어제보다 성장한 매일을 살아가는 중입니다.
iOS

[UIKit][MVVM][ProjectWithGitAPI] MVVM 패턴 정리

ProjectWithGitAPI안녕하세요!이전에 혼자 Git API를 이용한 작은 프로젝트를 진행했습니다.당시에는 MVVM 아키텍처로 구현하려고 했는데....진행하다 보니 스스로 아키텍처 패턴에 대한 이해가 낮은 게 느껴지더라구요. 그래서 아키텍처 패턴을 다시 학습하고!동일한 기능을 다양한 아키텍처 패턴으로 구현하는 프로젝트를 진행하려고 합니다.(최대한 아키텍처 패턴을 준수하도록 신경 쓰면서 코드를 짰습니다.) 해당 프로젝트가 규모는 작아도 Rest API, 네트워킹, 이미지 Caching, 페이징 처리,외부 라이브러리 사용 등등 배웠던 기술들은 거의 다 적용되었습니다.그래서 ProjectWithGitAPI 라는 이름으로 아키텍처 패턴을 공부하기 위한 프로젝트로 채택하게 되었습니다.(MVP 패턴 정리 글..

iOS

Swift 잡다한 기록들[RxSwift] RxSwift 입문, 찍먹하기(2)(기본적인 사용 ~ Observable)

안녕하세요 오늘은 저번 글에 이어서 곰튀김님의 강의를 따라가며RxSwift를 사용한 기본적인 코드와 함께 Observable의 개념에 다루겠습니다. 먼저 비슷한 동작을 하는 3개의 코드들부터 보시죠아래의 세 코드는 모두 url을 파라미터로 받아서 async로 이미지를 가져오는 코드입니다. 1 - Async 비동기 처리 Xguard let url = URL(string: loadingImageUrl) else { return }guard let data = try? Data(contentsOf: url) else { return } let image = UIImage(data: data)imageView.image = image 코드 자체에는 문제가 없지만 비동기 처리가 되어있지 않다면 실제로..

iOS

[UIKit]Modern Collection View 사용해보기

안녕하세요!오늘은 Modern Collection View 라는 것을 사용해보겠습니다.Modern Collection View란?Collection View는 아마 다들 접해보셨을텐데 Modern Collection View는 무엇이 다를까요? 공식문서를 통해 봤을 때 특징은 다음과 같습니다. - iOS 14.0+- Compositional layouts 사용- Diffable data sources 사용- 심플하게 UI 업데이트가 가능합니다. 그렇다면 Compositional layouts과 Diffable data sources은 무엇일까요?Compositional layoutsCompositional layouts은 UICollectionViewLayout 타입으로아래 그림처럼 Section, G..

iOS

[UIKit] 미세미세 팁 - 상위 뷰에서 함수로 한번에 Cell을 초기화 해보자.

안녕하세요!공부하다가 팁이라기도 정말 아주 많이 민망한데,혹시라도 저처럼 미처 생각지 못하셨던 분이 있으시다면 도움이 되시라고 정리해 봅니다. 혹시 아래처럼 TableView나 하위 뷰를 이렇게 초기화하셨던 분이라면 한 번쯤 보셔도 좋을 거 같습니다.// TableView의 Cell을 초기화 하는 상황func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "subCell", for: indexPath) as! subCell cell.textA.text = dataSource[indexPa..

dev_강건
데브깡의 개발 일기