ProjectWithGitAPI안녕하세요!이전에 혼자 Git API를 이용한 작은 프로젝트를 진행했습니다.당시에는 MVVM 아키텍처로 구현하려고 했는데....진행하다 보니 스스로 아키텍처 패턴에 대한 이해가 낮은 게 느껴지더라구요. 그래서 아키텍처 패턴을 다시 학습하고!동일한 기능을 다양한 아키텍처 패턴으로 구현하는 프로젝트를 진행하려고 합니다.(최대한 아키텍처 패턴을 준수하도록 신경 쓰면서 코드를 짰습니다.) 해당 프로젝트가 규모는 작아도 Rest API, 네트워킹, 이미지 Caching, 페이징 처리,외부 라이브러리 사용 등등 배웠던 기술들은 거의 다 적용되었습니다.그래서 ProjectWithGitAPI 라는 이름으로 아키텍처 패턴을 공부하기 위한 프로젝트로 채택하게 되었습니다.(MVVM 패턴 정리 ..
안녕하세요!보통 혼자 작은 작업을 할때는 세부 브랜치를 관리하기 보다TBD처럼 단일 브랜치를 관리하는게 편해서 자주 사용했었습니다. 하지만 프로젝트 규모가 큰 현업에서는 더 안정적인 브랜치 전략인Git-Flow 형식을 대부분 쓴다고 합니다. 그래서 이번에는 Git Flow 브랜치 전략에 대해 알아보고 실제로어떻게 적용했는지 이야기해보려고 합니다! 1. 브랜치의 종류- Main: 배포 가능한 상태의 코드가 있는 브랜치.- Develop: 개발된 작업이 모이는 개발 브랜치.- Feature: 개발 작업이 진행되는 작업 브랜치.- Release: 배포 준비를 위한 브랜치.- Hotfix: 빠른 버그 수정을 위한 브랜치. 이 중에서 Main과 Develop이 핵심 브랜치로 상시 존재하며나머지 브랜치는 상태 관리..
ProjectWithGitAPI안녕하세요!이전에 혼자 Git API를 이용한 작은 프로젝트를 진행했습니다.당시에는 MVVM 아키텍처로 구현하려고 했는데....진행하다 보니 스스로 아키텍처 패턴에 대한 이해가 낮은 게 느껴지더라구요. 그래서 아키텍처 패턴을 다시 학습하고!동일한 기능을 다양한 아키텍처 패턴으로 구현하는 프로젝트를 진행하려고 합니다.(최대한 아키텍처 패턴을 준수하도록 신경 쓰면서 코드를 짰습니다.) 해당 프로젝트가 규모는 작아도 Rest API, 네트워킹, 이미지 Caching, 페이징 처리,외부 라이브러리 사용 등등 배웠던 기술들은 거의 다 적용되었습니다.그래서 ProjectWithGitAPI 라는 이름으로 아키텍처 패턴을 공부하기 위한 프로젝트로 채택하게 되었습니다.(MVP 패턴 정리 글..
안녕하세요 오늘은 저번 글에 이어서 곰튀김님의 강의를 따라가며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 코드 자체에는 문제가 없지만 비동기 처리가 되어있지 않다면 실제로..