4. Realm, Dagger, Rx 도입
RetrievableObject RealmObject
Cursor기반 Paginator Service를
구현하기 위해 PK를 포함한
Object
Realm Cache를 사용하기 위해
Table을 정의하는 Model
2017년 3월. Code Refactoring (실패)
5. 2017년 6월. OCR 베타 출시 & Material Design Guide적용
Icon Card Style
Bottom Navigation Text Style
16. AAC Room 도입하려면?
RealmObject Room Entity
Realm Cache를 사용하기 위해
Table을 정의하는 Model
Room DataBase에서
Table을 정의하는 Annotation @Entity
Qanda Android Architecture
Realm, Dagger, Rx를 도입하기위한 대대적인 코드리팩토링이 있었는데요.
렘의 경우 렘의 Data Model들은 RealmObject를 상속받아야하는데
저희 앱의 Data Model들은 자체적인 Paginator Service를 위해 Retrievable이라는 Object를 상속받고있었습니다.
따라서 렘을 도입하려면 거의 대부분의 Data Model을 수정해야했고
그에 따라 대부분의 코드를 수정해야만해서 리팩토링의 규모가 매우 커졌고, 결국 시간 부족으로 실패를 하게 되었습니다.
그 이후 6월 풀이검색 서비스를 강조하기 위해 메인 디자인이 변경되고 탭이 추가되었고, 그와 더불어 디자이너와 함께 구글 머터리얼 디자인 가이드를 적용하면서 대부분의 디자인 요소들을 변경하면서 대규모 업데이트가 있었습니다.
또 마지막으로 대략 3개월간의 기간을 거쳐 앱을 완전히 새롭게 만든 콴다 버전2가 출시되었습니다. 앱을 처음부터 완전히 새롭게 제작을 하였는데요. 앱을 새롭게 제작하게된 이유는 1. 학생&선생 앱 분리 출시 2. 전체적인 디자인 개선 3. 서버API도 모두 변경하며 서버에서 주는 Model도 바뀔 예정 4. 한달의 준비기간
안드에서도 앱을 새롭게 제작하기로 결정.
Domain은 순수한 Java 모듈, Data와 Presenter는 Android 모듈
네트워크나 캐시등에서 사용하는 모델은 UserEntity.
후에 User로 변환해서 View에맞게 UserModel로 변경해서 뿌려주는 구조.