본문 바로가기

개발 이야기9

[iOS앱 개발] Mock 객체와 Protocol주입을 통한 UnitTest(실전편) 이전 포스팅에서 Mock객체와 Protocol 주입을 통한 UnitTest의 개념에 대해서 알아봤는데요. 이번 편에서는 실제로 제 앱에서 어떤 식으로 Mock객체를 만들었는지 소개해드리겠습니다. StocksDataManager 및 StocksDataManagerProtocol StocksDataManager는 주식 차트 데이터를 가져 오기위한 API를 제공하는 클래스입니다. 현재 앱에서는 MVVM패턴을 사용해 ViewModel이 StocksDataManager에서 가져온 데이터를 가공해 View에 그려주는 역할을 하고 있습니다. 앱을 개발할 때 StocksDataManager에서 데이터를 받아와 ViewModel이 원하는 형태로 데이터를 가공하고 있는지 매번 네트워킹을 통해 값을 확인했어야 했습니다. 하.. 2023. 6. 10.
[iOS앱 개발] TableView 드래그로 새로고침 (UIRefreshControl) 기존에 새로고침 버튼의 불편함 해소 기존에는 새로고침 버튼을 눌렀었는데 이게 높이 있어서 누르기가 정말 귀찮았습니다. 그래서 간편하게 테이블뷰를 아래로 드래그 해서 새로고침을 할 수 있는 기능을 간단하게 구현했습니다. UITableView에 UIRefreshControl 추가하기 테이블뷰를 아래로 당겼을 때 새로고침하는 기능을 추가하려면, UIRefreshControl을 사용할 수 있습니다. 먼저, viewDidLoad()에서 UIRefreshControl을 만들고, newsTableView에 추가해줍니다. 그리고, refreshControl의 addTarget을 통해 사용자가 새로고침을 요청할 때 호출할 메서드를 지정해줍니다. 이후 아래로 당겨서 새로고침을 요청하면, addTarget으로 지정한 메서드.. 2023. 6. 8.
[iOS앱 개발] 리뷰 요청 팝업 알람 띄우기 앱의 리뷰 팝업의 중요성 앱 출시 후 약 한 달이 지났습니다. 아직 본격적인 출시가 이루어지지 않아 다운로드 및 리뷰 횟수는 매우 적습니다. 다운로드한 유저들이 리뷰를 남기지 않는 경우가 많은데, 이때 리뷰 팝업을 띄워 유도하면 리뷰 수를 늘리고 신규 유저의 유입을 증가시킬 수 있습니다. 리뷰 팝업을 띄우는 방법으로는 StoreKit으로 직접 구현하는 방법이 있지만, 이는 다소 복잡합니다. 하지만 이미 쉽게 팝업을 띄울 수 있는 라이브러리가 있어 이를 사용하기로 결정했습니다. SwiftRater takecian/SwiftRater A utility that reminds your iPhone app's users to review the app written in pure Swift. - takecian.. 2023. 6. 8.