clyne의 개발 기록

[RxSwift] RxSwift를 공부하게된 이유 + 소개 본문

iOS/RxSwift

[RxSwift] RxSwift를 공부하게된 이유 + 소개

clyne_dev 2021. 4. 4. 11:06

안녕하세요

iOS 개발자 CNOO입니다.

 

3년동안 iOS개발을 하면서, 매번 MVC 패턴으로 설계되어있는 소스만 유지보수 하다보니,

현업에서 근무하는 동안 RxSwift의 필요성을 딱히 느끼지 못했던 것 같습니다.

 

풀타임으로 근무하고있는 현 회사에서는 마음대로 구조를 바꾸거나, 보안취약점 등의 이유로 제가 만든 작은 모듈 하나도 마음대로 붙이지 못해서 그런걸수도 있겠네요..

(금융업계다보니 개발하기에 굉장히 폐쇄적인 환경입니다 ㅠ_ㅠ)

 

 

개발자는 계속 공부하고 발전해나가야한다는 생각이 있어,

친한 동생이 창업한 작은 스타트업의 iOS 개발도 함께 진행중입니다.

(렛터디 라는 소규모 스터디 플랫폼입니다.  ㅎㅎ 관련 소개는 다른 카테고리를 참조해주세요~)

공식 오픈을 앞두고있는 신생 스타트업이라, 최신 라이브러리들을 마음껏 사용해볼 수도 있는 환경입니다!

따라서, 앞으로 RxSwift 카테고리에서 다루는 대부분의 게시글들은  '렛터디'앱의  MVC패턴을 MVVM으로 변경하는 작업 등이 많이 포함될 예정이고, 새로 추가되는 화면들은 모두 유지보수 및 단위 테스트가 용이하도록 MVVM+RxSwift로 구축하면서 그 과정에서 공부하는 내용들을 업로드할 예정입니다. 

 

MVC유지보수 할때는 몰랐는데, MVVM을 공부하다보니 RxSwift가 얼마나 개꿀프레임워크인지 알게 되었습니다.

비동기처리를 아주 간결하고 효율적으로 짤 수 있고, Stream의 흐름만 정확히 파악한다면, 테스트, 디버깅도 수월하게 진행할 수 있다는 장점을 가지고있습니다.

물론 RxSwift의 단점으로는 힘든 디버깅이라는 점을 꼽는 분들이 계신데,  저도 구축해보니 어느정도 공감하는 부분이 있었습니다. .debug()  슈거를 잘 활용하고, 구조만 잘 파악한다면, 디버깅이 크게 어렵지는 않을 것같다고...  아직까지는 생각하고있습니다 ㅎㅎ;;

 

자, 그럼 RxSwift의 세계로 빠져볼까요?

 

 

 

* Code 삽입 테스트