Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

전남대 Android_최영빈_5주차 과제_step2 #81

Open
wants to merge 33 commits into
base: yb0x00
Choose a base branch
from

Conversation

yb0x00
Copy link

@yb0x00 yb0x00 commented Jul 26, 2024

코드 작성하면서 어려웠던 점

  • 코드 수정의 범위가 비교적 넓어 커밋 단위를 작게 나누지 못했습니다.
  • 아직 데이터 바인딩을 적용했다는 수준으로 리펙토링하지는 못한 것 같습니다.
  • Hilt를 아직 적용하지 못했습니다. 적용해 최대한 빨리 commit 하겠습니다.

멘토님이 중점적으로 리뷰해 주셨으면 하는 부분

  • 리팩토링한 코드에서 놓친 부분이 있는지 확인 부탁드립니다.
  • 코루틴 적용이 필요한 부분이 더 있는지 확인 부탁드립니다.

현재 수정해야 할 부분이 많이 남은 상황으로 보입니다. 이른 시일 내에 보충하겠습니다.
😰 죄송합니다!

yb0x00 added 18 commits July 24, 2024 01:40
- 기본 코드 준비
- 구현할 기능 목록 정리
- DataSearchActivity에서 databinding 사용
- SearchViewModel가 LiveData 관리하도록 코드 수정
- 폴더명을 activiy에서 view로 변경하면서 데이터 바인딩 관련 미완성 코드가 포함됨
- 오류 방지를 위해 관련 변경사항 커밋함
(참고 커밋: 514a764)

- 주의사항 : 데이터 바인딩 부분은 현재 미완성 상태로 추가 수정이 필요함
- 에러 화면에 에러 메시지가 표시되지 않는 문제 해결

참고 커밋: b9171d4

변경 사항:
[HomeMapActivity]
- 복잡도를 낮추기 위해서 view가 하나의 viewModel을 사용하도록 수정

[MapErrorActivity]
- 데이터 바인딩 관련 코드 추가
- 기능별로 함수 분리

[MapErrorViewModel]
- setErrorMsg로 함수명 변경
- 에러 메세지가 null이 아닌지 검사하는 코드 추가, 에러 메세지의 공백을 없애는 코드 추가

[activity_map_error]
- 데이터 바인딩 관련 코드 추가

[MapErrorViewModelTest]
- 바뀐 setErrorMsg()함수 반영
- 코드 통일성을 위해 의존성 주입 관련 코드 추가
참고 사항:
- 파일의 폴더를 변경하는 과정에서 의도치 않게 파일이 복사 된 것 같음
- 관련 커밋: 3531fc6
app:layout_constraintTop_toTopOf="parent" />
<data>
<variable
name="homeMapActivity"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 variable을 사용하는 곳이 있나요?
뷰를 표현하기 위한 데이터를 정의하고, xml에서 해당 데이터를 직접사용하여 뷰가 변화되도록 만들어보세요.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

922cd84 수정했습니다:)
피드백 감사합니다!


class SearchHistoryRepository(context: Context) {

private val searchHistoryDao: SearchHistoryDao =

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

context를 통해 DB에 접근하는 것이 아닌, DAO를 생성자 주입으로 받도록 의존성 주입 코드를 작성해보세요.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ef760ac 수정했습니다:)
항상 감사합니다!

@omjoonkim
Copy link

1주차 과제 코멘트도 이 PR에 적용 부탁드립니다~!

@yb0x00
Copy link
Author

yb0x00 commented Jul 29, 2024

step1에 Hilt 적용하였습니다.
step1의 변경사항을 step2에 commit 하겠습니다.


피드백을 토대로 단계별로 진행했어야 했는데 룰을 지키지 못해 정말 죄송합니다!
강의를 듣다보니 기존 코드에 수정 해야 할 것 같은 부분이 많이 보여 스스로 덫에 빠져있었던 것 같습니다.
(Hilt을 사용하여 의존성 주입을 하면 되는 과제에서 전체 구조를 수정하려고 하는 등 잘못된 방향으로 진행하고 있었습니다.)

그리고 commit시에도 최소 단위로 커밋을 했어야 하는데,
Hilt 적용 때 Data Binding을 같이 적용한다거나
MVVM 패턴을 더 지키는 방향으로 수정하면서 Data Binding을 같이 적용했던 것 같습니다.

앞으로 더 유의해서 진행하겠습니다. 정말 죄송합니다!

@yb0x00
Copy link
Author

yb0x00 commented Jul 29, 2024

피드백 반영했습니다!
추가로 수정하면 좋을 부분 알려주시면 반영하겠습니다😊
감사합니다!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants