내배캠의 6주차에는 팀 프로젝트인 'SNS 앱 만들기'를 하였다.
개인정보 수정 페이지 Layout과 기능을 구현하였으며 전체적인 레이아웃을 조금씩 수정하였다. 그리고 Singletone과 Data Class를 활용하여 데이터를 관리할 수 있게 했다.
매번 과제할 때마다 느끼는 것이지만 아직 스스로 부족하다고 생각하며 더많은 노력이 필요하다고 생각한다. 그리고 팀장님이 역할을 분담해줬는데 내 실력을 생각해서 해결할 수 있을만한 적당한 난이도로 준 것 같으며, 배려해주셔서 감사한 마음이다.
그리고 팀 프로젝트를 하던 와중 감기에 걸려서 힘들었었는데 잘 마무리 할 수 있어서 다행이었다.
개인정보 수정 페이지 Layout을 구성하면서 ConstraintLayout과 Guidline, RelativeLayout, ScrollView, LinearView의 사용에 대해 다시 공부할 수 있었다.
또한 개인정보 수정 페이지의 기능을 몇가지 구현했다. 갤러리 접근을 위한 권한 요청, 사진 가져오기, 비밀번호 TextWatcher 등의 기능이 있는데, 이 중 갤러리 접근 권한 요청과 갤러리 앱으로 넘어가는 과정에 대해 지식이 없어 구글링을 하여 가장 간단하면서도 좋다고 생각하는 코드를 약간 수정하여 적용해보았다.
다음으로 Singleton을 구성하였다. 관련 개념이 잘 잡혀 있지 않아 이해하는데 시간이 조금 걸렸지만 코드를 작성하였고, Singletone과 Data Class로 User의 정보를 관리할 수 있었다. 그렇지만 이미지 URL정보를 저장하는 것은 해결하지 못했다.
그리고 selector로 커스텀 버튼을 만들었다. 인스타그램의 '좋아요' 버튼처럼 하트 ImageButton을 만들었고, 로그인/회원가입 버튼이 구분되게 다르지만 유사하게 만들었다. 하트 ImageButton은 selector의 clicked 속성을 사용하였고, 다른 버튼들은 pressed 속성을 사용하였다. selector의 속성에는 여러 가지가 있고 어떤 식으로 사용하는 것인지 알게 되었다.
브랜치를 merge 할 때 충돌이 있는 부분을 GitHub에서 수정할 때 다른 팀원의 코드 일부를 삭제하여 에러가 생겼던 일이 있었는데, 충돌이 생기면 다른 팀원들에게 알리고, merge 하기 전 여러 번 체크해야겠다.
그리고 다음 개인 과제나 팀 프로젝트부터는 PR 룰을 구체적으로 설정하여 merge, Pull 외 Issue, PR, Kanban board 등 Git/GitHub 제대로 활용해봐야겠다.
지난 8월 11일에 제출했던 개인과제에 대한 피드백이 업로드 되었는데 칭찬이 많아서 좋았다😊
그리고 더 알아보면 좋을 부분도 알려주셔서 공부할 게 하나 더 늘었다ㅎㅎㅎㅎ