2024.03.15 ~ 2024.04.15 | 개인 프로젝트 유저가 냉장고를 추가하고 각 냉장고별 재료 및 유통기한 관리를 할 수 있는 앱
UI : Code based UI Collection View Diffable DataSource
아키텍처 : MVVM
네트워킹 : URLSession
데이터 관리 : CoreData FileManager
미디어 접근 및 처리 : UIImagePickerController AVCaptureSession
| 재료 리스트 화면 | 재료 추가 화면 |
|---|---|
![]() |
![]() |
| 바코드로 입력 화면 | 냉장고 관리 화면 |
|---|---|
![]() |
![]() |
- 데이터 관리:
CoreData를 활용하여 냉장고 및 재료 정보를 관리하는 데이터베이스를 구축하였습니다. 복잡한 데이터 구조를 효율적으로 관리하고, 사용자가 재료를 쉽게 저장, 탐색, 수정할 수 있는 기능을 구현했습니다. CoreData를 활용해 앱을 종료한 후에도고 사용자의 데이터가 남아있도록 구현했습니다. - 사진 추가 및 관리 기능:
UIImagePickerController및FileManager를 활용하여 사용자가 재료 사진을 추가하고 관리할 수 있는 기능을 구현했습니다. - 바코드 스캔 기능:
AVCaptureSession과식품의약품안전체 제공 식품 바코드 정보 API를 결합하여 식품 바코드를 스캔하고 해당 식품 정보를 자동으로 검색, 표시하는 기능을 개발했습니다. 해당 기능을 통해 사용자가 직접 재료명을 입력하지 않아도 자동으로 입력되어 유저 편의성을 높였습니다. - 재료 검색 및 필터링 기능: 재료별 특성을 고려한 필터 처리 및 재료명 검색 기능을 구현하여, 사용자가 원하는 재료를 빠르게 찾을 수 있도록 했습니다.
- 기술적 접근 및 UI 설계:
MVVM 패턴을 적용하여 앱의 구조를 설계하고,Code based UI접근 방식을 사용하여Collection View와Diffable DataSource를 통해 동적이고 반응성 높은 사용자 인터페이스를 구현했습니다. 공공 API 키의 보안을 위해.xcconfig와.gitignore를 사용해 구현했습니다.



