이 프로젝트는 네이버 음성메모의 기능을 클론한 애플리케이션입니다. MVVM 패턴을 활용하여 구조화된 코드와 유지 보수를 용이하게 하였습니다.
MVVM(Model-View-ViewModel) 패턴은 애플리케이션의 구성 요소를 다음과 같이 나눕니다:
- Model: 애플리케이션의 데이터 및 비즈니스 로직을 관리합니다.
- View: 사용자 인터페이스(UI)를 담당하며, 사용자와의 상호작용을 처리합니다.
- ViewModel: View와 Model 사이의 중재 역할을 하며, UI에 필요한 데이터를 준비하고, 사용자 입력을 처리하여 Model에 전달합니다.
- 사용자가 할 일을 추가, 수정, 삭제할 수 있는 기능을 제공합니다.
- 할 일 목록은 ViewModel을 통해 관리되며, 데이터 바인딩을 통해 UI에 실시간으로 반영됩니다.
- 음성 메모 화면은 AVAudioRecorder와 AVAudioPlayer를 이용하여 구현되었습니다.
- 녹음을 실행할 때, 초기에는 녹음 시간이 0초로 표시되는 문제가 발생했습니다.
- 해당 문제는 AVAudioSession을 올바르게 구성하여 해결하였습니다. 이를 통해 녹음 세션을 적절히 초기화하고 관리할 수 있었습니다.
- 이 저장소를 클론합니다.
git clone https://github.com/sion0104/voiceMemo.git