-
[Android] 주소록 App 만들기 - 마무리 & KPT 회고안드로이드 2024. 4. 30. 12:44
📝 프로젝트 소개
- 구현한 기능
- Contact
- TabLayout, ViewPager2, FloatingActionButton을 활용하여 사용자 인터페이스를 구성
- 탭 전환(TabSwitch) 클릭 이벤트를 통해 사용자의 상호작용을 처리
- Contact List
- RecyclerView와 Adapter를 이용해 연락처 리스트를 동적으로 표시
- 사용자가 좋아하는 연락처에 대해 즐겨찾기 기능을 제공
- Contact Mypage & Contact Detail
- ClipboardManager, PopupMenu, Intent를 사용하여 다양한 기능을 제공 (전화, 문자, 링크 접속 및 정보 복사)
- Contact Dialog & Schedule Dialog
- DialogFragment를 사용하여 사용자 입력을 받는 다이얼로그를 구현
- 입력된 정보에 대한 유효성 검사 및 갤러리에서 이미지 선택 가능
- 와이어프레임 (Figma)
👩👧👧 팀 플랜
- 역할 분담
- 팀장: TabLayout와 ViewPager, data class 구현 및 관리
- 팀원 1(나): 연락처 추가 (AddContactDialogFragment), 스케줄 추가 (AddScheduleDialogFragment)
- 팀원 2 : 상세 정보 (ContactDetailFragment), 마이 페이지 (MyPageFragment)
- 팀원 3: 상세 정보 (ContactDetailFragment), 마이 페이지 (MyPageFragment)
- 팀원 4: 연락처 리스트 (ContactListFragment)
- 협업 약속
- Git 브랜치 전략:
- develop 브랜치에 직접 푸시하는 것을 금지
- 모든 브랜치 병합은 Pull Request를 통해 이루어짐
- PR은 적어도 한 명 이상의 팀원의 승인이 필요
- branch 명 : feat/기능 구현 페이지 명, refactor/기능 구현 페이지 명
- Git 컨벤션:
- "커밋 타입: 커밋 내용"
- feat: 새로운 기능 추가
- fix: 버그 수정, 병합 시 충돌 해결
- refactor: 1) 코드 간소화, 중복된 로직 제거 2) 파일의 삭제, 이동 및 이름 변경
- add: resource등 파일 추가
- style: 사용자 UI 디자인 변경 시
- etc..
⚙️ 앱 시연 영상
📜 제작 과정
- 4/22: 프로젝트 기획 단계
- 기능 및 구현 사항 분석.
- 와이어프레임 및 UI/UX 디자인.
- 기술 스택 선정 및 역할 분배.
- 4/22 ~ 4/24: 개발 진행
- Git과 칸반 보드를 사용하여 의견을 문서화하고 공유.
- 4/24: 테스트 및 리팩토링
- 기능 통합 후 코드 병합과 함께 테스트 진행.
- 4/25: 최종 병합
- main 브랜치로의 병합 작업 후 시연 영상 제작 및 공개.
📋 KPT 회고
< 팀 피드백 > 튜터님 피드백 UI 이쁘게 잘 만들어주셨습니다. 목표한 일정대로 개발이 잘 되었는데, 일정 스케줄링이나 코드 관리를 하는 역할을 맡는 사람이 있다면 파트 분배가 더 잘 됐을 것 같습니다.
리사이클러 업데이트 시, 노티파이데이터셋체인지를 다 콜하고 있습니다. 리사이클러 뷰에는 아이템 업데이트를 하는 함수들이 여러 개가 있는데, 전부 시도해 보면서 각 차이를 느껴보셨으면 좋겠습니다.
ocreate()에서 함수로 관련 로직들을 분리해 봤으면 좋겠습니다.
어댑터에서 뷰홀더를 참조 해제할 때, 메모리 누수 문제를 해결해 보면 좋겠습니다.
전체적으로 일정대로 잘하셨습니다. 수고하셨습니다.Keep - Pull Request 전에, 코드 리뷰를 하고 서로의 승인을 받기
- 피그마를 적극적으로 사용해서 UI 구현하기
- 화면 공유하기
- 모르는 것이 있을 때, 바로 질문하기Problem • 문제점 : 정한 일정 안에 개발 및 병합을 완료하지 못한 점
• 해결 방안 : 문제가 생길 수 있음을 염두하고 일정을 짜기
• 문제점 : 팀원과의 소통이 원활하지만은 않았던 점
• 해결 방안 : 화면 공유(or 웹캠)은 항상 켜두고, 일정이 있을 경우 미리 팀원에게 공지하기(이미 팀 약속에는 적어놨지만 잘 지켜지지 않았던 것 같음)Try - 개인 외출 시에 팀원들과 소통을 하도록 노력해보기
- 일정 스케줄링이나 코드 관리를 하는 역할을 맡는 사람 정하기
- 함수로 관련 로직 분리하는 과정까지 해보기<개인 피드백 (느낀점)> 팀장 고생 많으셨습니다!! 팀원 1(나) Pull Request 규칙을 정하고 준수하니 병합 시, Conflict가 적었습니다. 좋은 Git 협업 방법을 배우게 되어서 좋았습니다. 팀원분들 모두 고생 많으셨습니다. 😊 팀원 2 3주동안 코딩이나 협업 과정 등 배워가는게 많았습니다. 적극적으로 참여해주신 팀원분들 고생 많으셨습니다 🙂 팀원 3 팀 프로젝트를 하면서 저의 부족함을 많이 깨닫고 경각심을 가질 수 있게되었습니다
팀원분들덕분에 무사히 프로젝트를 마칠 수 있었습니다 감사합니다!팀원 4 많은 걸 배운 것 같습니다 고생해주신 팀원분들께 감사합니다 - Keep : 이번 프로젝트에서 진행한 과정 중 다음 프로젝트에서도 유지했으면 하는 부분.
- Problem
- 문제점 : 이번 프로젝트에서 발생한 문제점을 객관적으로 판단
- 해결 방안 : 해당 문제점을 해결할 수 있는 현실적인 방안 제시
- Try : 다음 프로젝트를 위해 해야 할 노력
'안드로이드' 카테고리의 다른 글
[Android] 데이터 저장 - Room (0) 2024.04.30 [Android] 데이터 저장 - SharedPreferences (0) 2024.04.30 [Android] Check your module classpath for missing or conflicting dependencies (Gradle 인식 안되는 오류) 해결 (0) 2024.04.29 [Android] Custom DialogFragment를 Fragment에서 띄우기 (0) 2024.04.29 [Android] Custom Dialog Fragment 생성 & EditText 유효성 검사 (0) 2024.04.23 - Contact