Cute Apple
본문 바로가기
일상

맨땅의 리팩토링 6일차 회고

by 미댕댕 2022. 9. 1.

우선 오랜만에 블로그를 쓰는것같다!

 

1일 1포스팅을 목적을 했는데

기존 프로젝트 리팩토링을 결심하고 나서

하루종일 코딩코 하다보니... 어째 조금 포스팅에 헤이해졌다....

 

그래서 오늘 회고라도 하려고 포스팅을 결심!

 

이 포스팅을 계기로 나를 다시 돌아보고 반성 & 결심으로 

내 자신을 더 단단하게 만들거다

 

우선 리팩토링을 결심하게된 계기는

CMC 11기에 붙어 버린것.....

개발경력 1.5년 이지만 안드로이드를 제대로 공부한지는... 4달도 안되었는데

나의 노력을 알아주신건가...(왜 뽑으신거죠 파트장님.. 알려줘요 에르메스)

여튼 한달 안에 개발을 완료(이거맞아?)하여 앱 런칭까지 진행하기 위해서는

스킬업이 필요하다는 생각이 들었다

 

MVVM & Repository 패턴을 제대로 사용해보지 못한 나에게는

거의 맨땅의 리팩토링 수준이었지만 그래도 도전해보기로 한다 (feat. Coroutine)

 


 

[1~2일차]

Repository 패턴만 미친듯이 찾아본것같다...(Datasource 가 뭔데...)

근데 사람마다 어쩜 이렇게 쓰는방법이 다른지...?

구조 잡고 로그인을 어떻게 MVVM 으로 구현할지에만 시간을 다 쓴것 같다...

 

그래도 얼추 로그인은 되는것을 확인..!

추가로 유효성 검사도 되게끔 Databinding 을 사용하여 구현하였다

 

 

[3~4일차]

이제 얼추 Repository 를 사용할줄은 알아졌다..(물론 정석은 아님... 이게 맞는지도 모르겠음..

그럼 이제 메인 페이지를 진행해야했다..

 

메인 페이지에 Runnable 로 배너를 흐르게는 할 수 있었지만

밑에 1/3 처럼 보이게 하는것을 해보고 싶었다 (물론 Viewmodel 을 통해서!)

어느 블로그의 도움을 받아 구현 성공..!

 

그리고 Coroutine 과 Viewodel을 사용하여 autoPaging을 할때는 lifecycleScope을 사용한다고 하더라

사실 Coroutine 도 무지성 코루틴을 사용하기때문에 따로 이론공부가 필요할 것같다

-> 책 or 강의좀 추천해 주세용...

 

 

[5~6일차]

이제 메인페이지, 카테고리도 얼추 구현되었겠다

검색페이지로 넘어가볼까...? 했는데

뭐지 생각보다 너무어렵다...

 

최근 검색어를 위해서 Room Database 를 사용하는데 그것도 Repository 패턴을 이용해아하고....

어쨌든 구현은 완료되었지만 9시간이라는 시간이나 걸렸다... (담엔 3시간만에 할수있을거야)

심지어 검색 api 도 없어서 눈물흘리면서 어떻게든 구현해보려고 노력했다

 


 

새로운 기능 & 패턴을 공부하기위해 시작한 여정이기때문에 오래걸리는것을 어쩔수 없다고 생각한다

물론 뭔가 너무 오래걸려서 가끔씩 현타가 오긴하지만...

 

공부하나보니 하나 의문인게 Viewmodel안에서 보통 Repository 를 호출해서 LiveData에 받은 다음

Activity 또는 Fragment 에서 Observe 하는 느낌으로 쓰는데 (아니라면 알려줘요...)

 

뭔가 그럼 기능별로 ViewModel을 만들어야하는건가? 그러면 하나의 Activity 나 Fragment 에 여러 Viewmodel 이 붙을수도 있는데 이게 맞나...? 여러 의문이 들기 시작했다

주변에 아는 개발자들에게 한번 물어봐야 할것같다...! (질문 100개 장전)

 

그리고 아직 구석구석 빈곳이 많다

뭔가 확실하게 제대로 돌아가는 느낌이 아닌것같아서

하나하나 찾아가면서 제대로 잡아갈 예정(3주..안에..)

 

 

마지막으로 나의 리팩토링을 위해 Figma & Zeplin 로 디자인 중인 친구아 고마워워워!!!💛💛

(물론 굉장히 빡쳐보임ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ)

 

 

 

반응형

댓글