Skip to content

[UI, feat] 차트 뷰 구현 - 드래프트#87

Draft
kelly-chui wants to merge 7 commits intodevfrom
ui/#47/chartview
Draft

[UI, feat] 차트 뷰 구현 - 드래프트#87
kelly-chui wants to merge 7 commits intodevfrom
ui/#47/chartview

Conversation

@kelly-chui
Copy link
Copy Markdown
Contributor

🔖  Issue Number

close #47

📙 작업 내역

구현 내용 및 작업 했던 내역을 적어주세요.

  • 차트 뷰 생성

(미완료)

  • 테스트
  • 델리게이트 메소드 생성 (컬렉션 뷰 델리게이트로 직접 접근하지 않도록)
  • 상수 정리

📝 PR 특이사항

PR을 볼 때 팀원에게 알려야 할 특이사항을 알려주세요.

  • UICollectionView <-> Compositional Layout 간 값 공유 문제

👻 레퍼런스

  • 참고한 자료

- ChartDataEntry: 차트 한 칸(막대, 점 하나)에 해당하는 단일 데이터 모델입니다.
- ChartDataSet: 데이터 엔트리의 집합입니다.
- 모든 차트들의 슈퍼 클래스입니다. 이 클래스를 서브클래싱 하여 다양한 차트를 구현할 수 있습니다.
- 축 기반 차트에서 X축과 Y축을 그려주는 데코레이션 뷰 입니다. UIGraphics를 이용해 차트를 그립니다.
- UICollectionView에서 Compositional Layout으로 값을 넘겨줄 방법이 없어 고정된 값을 사용하고 있습니다. 이 부분은 추후 조정이 필요해 보입니다.
차트 뷰 내부에서 사용하는 컬렉션 뷰의 셀들을 구현했습니다.
- BarChartCell: 막대 그래프 한 칸을 그려주는 셀입니다.
- YAxisTickCell: Y축의 눈금을 그려주는 셀입니다.
- X축, Y축이 있는 차트를 구현할 수 있는 뷰입니다.
- 서브 클래싱으로 차트 종류 (막대, 꺾은선)을 나눌 수 있어서 final을 사용하지 않았습니다.
@kelly-chui kelly-chui self-assigned this May 27, 2025
@kelly-chui kelly-chui added feature 🦖 New feature or request UI/UX 🪄 labels May 27, 2025
- 팀 컨벤션에 맞게 메소드 간 버티컬 화이트 스페이스 제거
- DocC 주석 누락된 메소드들에 주석 추가
- SRP 관점에서 분리되어야 할 부분 TODO 추가

MVP 완성 이후에, 차트의 구조적인 부분들을 다듬어야 할 필요가 있는 것 같습니다. 지금 생각한 것은 다음과 같습니다.
- Compositional Layout 생성하는 팩토리
- nearestScrollIndex() 계산과 같은 로직들은 분리를 해야할지 고민 중 입니다. 오버 엔지니어링일 수도 있겠다 생각합니다.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature 🦖 New feature or request UI/UX 🪄

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[UI] 산책 리포트 뷰 구현

1 participant