SwiftUI로 진행하던 블록와이드를 작업하다가.. 결심하였다.
UIKit으로 새로운 어플을 처음부터 다시 만든다.
코인겍코에서 받아오던 리스트를 업비트에서 받아오는 리스트로 교체하려고 하니 검색목록, 검색, 세부 화면 등 수정해야 할 것들이 한둘이 아니다.
거의 앱을 처음부터 다시 만드는 수준이다.
그런데 그러한 과정에서 크게 배우거나 도전할 과제가 있지는 않을 것 같았다.
최근까지 진행했던 업비트 RestAPI로 데이터 받아와서 뿌려주기, 웹소켓 API 활용하기, 실시간 데이터를 비동기 처리하기 등은 매우 도전적인 과제였고 새로운 학습이었다.
하지만 구현한 업비트 리스트를 기반으로 앱의 기능을 다시 만드는 것은 이미 해본 것들이었고,
코드가 유지보수가 어렵게 제작이 되어서 그런지 거의 새롭게 만드는 수준의 작업이 필요해보인다.
차라리 UIKit으로 도전하며 새롭게 만드는 것이 더 좋겠다고 판단했다.
이미 블록와이드는 앱스토어에도 출시한 꽤나 멋진 앱이다.
이제는 블록와이드에서 도전하고 실수하며 배운 것을 토대로 더 멋진 앱을 만들어볼 시기가 온 것 같다.
새로운 프로젝트에서 도전하고 공부해볼 리스트는 대략 다음과 같다.
1. UIKit
2. RxSwift
3. Swift Concurrency
UIKit과 RxSwift는 대부분의 기업에서 필수 조건으로 요구하고 있다.
꼭 숙달해야 하는 프레임워크와 라이브러리..
Swift Concurrency는 Swift 언어에서 비동기적이고 동시에 실행되는 코드를 보다 쉽게 작성하고 관리할 수 있게 하는 새로운 기능이다.
최근에 앱의 성능과 안정성을 향상시킬 수 있는 동시성 프로그래밍의 중요성을 자각했고, Swift Concurrency를 공부해보려고 한다.
이렇게 새로운 기술 기반의 코인 어플을 만들어본 이후, 여러 토이 프로젝트도 하려고 한다.
RestAPI를 이용해서 CRUD 구현, 로그인 및 문자 인증, 결제, 로케이션 등 실무에서 한번 쯤은 반드시 다뤄볼만한 주제들을 토이 프로젝트로 진행해봐야 할 것 같다.
확실히 몇 개월 전보다 많이 성장하였다.
블록와이드 프로젝트를 시작할 때에는 Swift 언어도 익숙하지 않았다.
하지만 이제는 내가 직접 만든 앱도 출시가 되었고, 면접을 통해서 무엇이 부족한지 성찰하였고, 무엇을 더 공부해야 할지도 알 것 같다.
또한 아마도 자료구조와 알고리즘에 대해서도 함께 공부하게 될 것 같다.
이번에 웹소켓을 통해 실시간 데이터를 받으면서 시간복잡도와 관련해서 배열과 딕셔너리를 사용했을 때의 장단점을 알게 되었기 때문이다.
결국 앱의 성능을 향상시킬 수 있는 공부라면 반드시 해야지.
홧팅이다.
'생각정리' 카테고리의 다른 글
결국 문제는 선택과 집중.. (0) | 2023.03.15 |
---|---|
동시성 프로그래밍 공부하며, 앱 성능 개선하기 (0) | 2023.03.11 |
당근마켓 x 서핏 커피챗 후기 (iOS 개발자) (0) | 2023.02.17 |
ChatGPT를 사용해 iOS 개발해본 후기 (0) | 2023.02.11 |
[블록와이드] 진행 한 것과 앞으로의 도전과제 (0) | 2023.01.27 |
댓글