본문 바로가기
개발

특정 유저 기록 조회 API 연결을 통한 데이터 처리 입문

by 닉네임 입니다 2024. 11. 12.
728x90
반응형

특정 유저 기록 조회 API 연결: 데이터 처리의 기초 다지기

안녕하세요! 개발자 여러분, 오늘은 백엔드 개발에서 중요한 요소 중 하나인 API 연결에 대해 이야기해보려고 합니다. 이번 포스트에서는 특정 유저의 기록을 조회하는 기능을 구현하는 과정을 단계별로 살펴보겠습니다.

들어가며

API(Application Programming Interface)는 다양한 소프트웨어 시스템이 서로 소통할 수 있도록 도와주는 도구입니다. 특히, 유저 프로필 조회와 같이 데이터베이스의 특정 데이터를 읽어오는 기능은 대부분의 애플리케이션에서 필수적입니다. 이번 프로젝트에서 우리는 API를 통해 유저의 기록을 조회하고, 이를 프론트엔드에 나타내는 방법을 살펴보겠습니다.

코드 작성하기

먼저, API를 이용하여 특정 유저의 기록을 가져오는 기본적인 코드를 작성해보았습니다. 아래 코드를 통해 데이터를 요청하고 처리하는 과정을 살펴보실 수 있습니다.

/// 서버에서 특정 유저의 기록 가져오기
func getuserRecords(userId: Int, fromCurrentVC: UIViewController){
    NetworkManager.shared.getUserRecords(userId: userId) { result in
        switch result {
        case .success(let models):
            self.userRecords = models
            self.userRecordModel = models
            print("-- user record view model --")
            print(models)
        case .failure(let error):
            print("-- user record view model --")
            print(error)
            let networkAlertController = self.networkErrorAlert(error)

            DispatchQueue.main.async {
                fromCurrentVC.present(networkAlertController, animated: true)
            }
        }
    }
}

코드 설명하기

  1. API 요청: getuserRecords 함수는 유저ID를 인자로 받아, 해당 유저의 기록을 서버에서 요청합니다.
  2. 결과 처리: API 요청이 성공하면 기록을 모델에 저장하고, 실패하면 에러 메시지를 출력하여 알림창을 present합니다.
  3. 비동기 처리: API 호출은 비동기로 이루어지며, 요청 후 UI가 멈추지 않도록 DispatchQueue.main.async를 사용하여 UI 업데이트를 수행합니다.

서비스 구조 개선

이 코드를 작성하면서 데이터가 의도한대로 불러와지지 않는 경우를 경험했습니다. 처음에 API를 통해 데이터를 요청하고 나서, 해당 데이터를 테이블뷰에 반영하기 위한 코드가 적절히 수정되지 않았던 것이죠. 이와 같은 실수는 실제 개발에서도 흔히 발생할 수 있으며, 항상 데이터 흐름을 명확히 체크해야 합니다.

/// 특정 유저의 기록 개수 반환
func userrecordCount() -> Int {
    return userRecordModel.count
}

예제 실행 결과

API 연결 후, 이제 유저의 기록을 성공적으로 불러오고, 화면에 올바르게 표시하고 있습니다. 이 과정을 통해 개발자들이 쉽게 데이터를 조회하고 표시하는 방법을 배울 수 있습니다.

추가적으로 고려할 점

이 프로젝트에서 기본적인 API 연결 외에 고려해볼 사항 몇 가지는 다음과 같습니다.

  • 캐싱 기능: 자주 요청되는 데이터는 캐싱하여 성능 향상을 도모할 수 있습니다.
  • 구조화된 에러 처리: 단순한 에러 메시지 외에도, 사용자에게 더 친절한 에러 처리를 구현해야 합니다.
  • 테스트 자동화: API 요청과 응답을 자동화된 테스트로 검증하면 개발 효율성이 높아집니다.

마무리하며

이번 포스트에서는 특정 유저의 기록을 API를 통해 조회하는 방법을 알아보았습니다. API는 현대 애플리케이션에서 필수적인 요소이므로 그 중요성을 잊지 말고, 더 나아가 다양한 기능으로 확장할 수 있는 기회를 제공합시다. 프로그래밍과 개발의 즐거움을 느끼면서, 여러분의 프로젝트가 성공적으로 완료되기를 바랍니다!

궁금한 점이나 질문이 있으시면 언제든지 댓글로 남겨주세요. 그럼 다음 포스트에서 또 만나요!

728x90
반응형