-
iOS - 주요 음원 챠트 순위 비교 앱 (멜론,벅스,지니)Project 2020. 3. 4. 12:16
1. 개발 배경
간단한 로컬 앱을 몇개 만든 이후에 네트워크를 이용한 앱을 만들어보고 싶었다.
아이디어를 고민 하던 중 최근 음원 사재기에 대한 이슈가 많아서
유명 음원사이트들의 랭킹을 한번에 비교 해보면 소비자 입장에서 좀 더 올바른 판단을 할 수 있을 것다는 생각에 개발을 시작했다.
전반적인 구조는 아래와 같고 AWS에 대한 지식이 적어 초반 셋팅에 시간을 많이 소모했다.
: 파이썬 크롤링 스크립트 수행 -> Firebase에 크롤링 결과 DB형태로 저장 -> iOS TableView를 통해 DB내용 출력
: AWS EC2 인스턴스에서 크롤링 스크립트를 정기적으로 수행
2. 개발 환경
- 언어 : Swift, Python
- 사용한 패키지(Swift) : Toast_Swift, FirebaseFirestore
- 사용한 패키지(Python) : Bs4, Requests, Firebase
- 백엔드 : FirebaseFirestore, AWS EC2
3. 주요 기능
1) 주요 음원사이트(멜론, 벅스, 지니)의 TOP3 순위 곡 정보 확인
2) 주요 음원사이트의 TOP100곡 정보 확인
3) 곡 검색 기능 : 전체 음원사이트내에 내가 원하는 가수 or 곡이 포함되었는지 검색 가능
4. 회고 + 결과물
1) 시연 영상
2) 회고
공통적으로 사용 가능한 함수는 최대한 하나의 파일에 관리하려고 노력했지만 개발 패턴에 대한 공부가 더 필요하다.
그래도 이번 프로젝트를 진행하면서 iOS앱 개발시 필요한 여러 지식을 익혔다.
[프로젝트를 진행하면서 공부한 내용]
- 앱 아이콘 제작
- 런치 스크린 제작
- 프로젝트(앱) 이름 변경 방법
- FirebaseFirestore 연동, 쿼리, DB 저장
- 동기/비동기 처리 (Swift GDC)의 개념 및 기본적인 활용
- AWS 기본 및 EC2 인스턴스 관리
- 리눅스 기본 명령어
- ViewController간 데이터 전달
[추가적으로 공부가 필요한 내용]
- 개발 패턴
- 동기, 비동기 통신에 대한 확실한 이해
'Project' 카테고리의 다른 글
iOS - 브랜드별 커피 메뉴판 앱 (0) 2020.04.06 iOS - 해결의 책 feat.구글 애드몹 (0) 2020.03.09 iOS - 명언과 함께하는 to-do list 앱 (0) 2019.12.23 iOS - 계산내역이 기록되는 계산기앱 (0) 2019.12.09 Django - 북마크리스트 정리 사이트 (0) 2019.12.02