Skip to content

dogdduddy/ingredient

Repository files navigation

재료 관리 App 프로젝트

**개발기간 : 2022.07.07 ~**
Ingredient V2 (Clean Architecture)

Index

Introduce

보관 재료의 유통기한을 알려주고, 음식 검색을 도와줍니다.

Environment & Library

  • min SDK : 26
  • target SDK : 31
  • Kotlin : 1.7.21
  • Android Studio : Electric Eel 22.1.1
Purpose Library
Async Task Coroutine
Local Database Room
Server Database Firebase FireStore, Firebase Auth, Firebase Storage
Server Firebase Functions, Node.js
Presentation Material Design2(Chip), Jetpack Navigation, ViewPager2, Glide,

Feat

소셜 로그인

음식 추천 및 검색

유통기한 관리

장바구니

그 외

  • 유통기한 일수 차감

Document

Future & Challenge

데이터베이스의 및 서버의 구현

Firebase의 FireStore는 쿼리를 위한 처리 과정과 많은 데이터를 불러들일 때의 속도가 저하된다는 단점이 있습니다. 속도 향상을 위해 데이터의 중복은 불가피한 상황입니다. 그래서 Spring을 직접 구현하여 NoSQL을 벗어나도록 구현할 예정입니다. 유통기한 일수 차감을 위해 구현한 Firebase의 Functions도 서버로 구현할 예정입니다.

관심사 분리 및 모듈화

Spring으로의 이전 작업과 IOS와 같은 플랫폼 확장을 위해 기능별로 모듈을 분리해서 재사용할 수 있게 구현할 것입니다. 관심사를 분리하고 모듈화를 적용하기 위해 Clean Architecture와 MVVM 패턴을 참고했습니다.

Compose 및 애니메이션 적용

관심사를 분리하고 모듈화를 진행하는 이유 중 하나는 테스트 용이성 때문입니다. 그래서 MVVM을 구현하기 위해 Data Binding이 아닌 MVVM + Compose를 + AAC viewModel + LiveData or StateFlow로 구현할 예정입니다. 현재는 애니메이션이 적용되지 않아 어색한 동작을 보여주고 있습니다. Drawer나 SearchBar 클릭 효과, Splash 등을 구현하여 자연스러운 동작이 되도록 구현할 것입니다.

배포

아직은 테스트 이미지, 테스트 데이터로 구 동하고 있습니다. 그래서 눈에 보이는 작은 에러들만 처리해왔습니다. 배포 과정에서, 유지보수 과정에서 배울수 있는 것들이 아직 많이 남아있다고 생각해서 배포를 통해 학습을 해봐야겠다고 생각했습니다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published