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
를 사용해 구현했습니다.