🖊생활/✒️프로젝트 회고
[짝 프로그래밍 프로젝트 회고] 갤러리 앱
아무루
2022. 3. 28. 11:56
갤러리 앱
결과
사용한 도구들 | --- |
---|---|
OS | Adroid |
IDE | 안드로이드 스튜디오 |
build | Gradle |
언어 | kotlin |
형상관리 | github |
방식 | 페어 프로그래밍 |
문서 | github, notion |
아키텍쳐 | MVVM |
기타 | Coroutin, Glide, ViewModel, RecyclerView, Cusor, Json |
목표 | 짝 프로그래밍을 통해서 기기의 사진 권한을 얻고 사진을 다운로드하는 어플 구현 |
팀원 | 한, 본인 |
리뷰어 | 아이비, 한, 본인 |
KPT
- 😎 Keep
- 짝 프로그래밍의 장점을 가져와 보자
- 30분 코딩 10분 휴식이 아주 좋았다. 처음에 글만 봤을 때는 "너무 짧은 거 아닌가?" 했는데 실제로 짧다 30분이라는 시간은 너무 짧은 시간이고 휴식 10분도 짧았다. 하지만 오히려 집중시간을 늘어났고, 진도도 더 빨리 나갈 수 있게 되었다.
- MVVM 연습
- 더 많이 구현해보고 익숙해지면 자연스럽게 설계부터 녹아들게 진행 할 수 있을 거 같다.
- 샘플 코드와 다른 코드들 보기
- 현업에서 일하시는 분들의 코드가 도움이 많이 되는 것 같다. 모방은 창작의 어머니...카피를 많이 해보자
- 샘플 코드와 다른 코드들 보기
- 이번 프로젝트에서 구글의 샘플코드를 보고 뒤통수를 맞은 기분을 느꼈다. 페이지는 항상 액티비티, 프래그먼트라고 생각했고, 자연스럽게 그렇게 진행을 했는데 하나의 액티비티로 visibled을 사용해 진행할 수 있는 방법이 있다는 것을 배워서 기분이 좋았고, 기능이 딱히 없는 부분은 이렇게 처리도 할 수 있겠구나를 배웠다.
- 로그 찍어보기
- 혼자 진행을 하면 항상 로그 먼저 찍어보는 것을 깜빡해서 다쓰고 나서 오류가 나면 확인하는 일이 또 필요했는데, 한과 진행하며 그 부분을 상기할 수 있어서 좋았다.
- 로그 찍어보기
- 더 많이 구현해보고 익숙해지면 자연스럽게 설계부터 녹아들게 진행 할 수 있을 거 같다.
- 이번 프로젝트는 사실 MVVM이라고 하기는 창피하지만 그래도 구현해보려고 애썼고, 학습한 점에서 지속할 점이라고 생각했다.
- 짝 프로그래밍의 장점을 가져와 보자
- 🤔 Problem
- 깃을 항상 신중하게 사용하자
- main 브런치에 잘 못 머지를 해서 강제 푸쉬로 다시 되돌린 적이 있었는데, 그 덕에 한의 커밋이 꼬여서 시간을 날린 적이 있었다.
- 너무 죄송해서 커밋 이력과 한의 로그를 살펴보며 비교를 해서 마지막에 내가 dev에 머지를 하고 나서 강제 푸시로 메인을 돌려 버려서 dev의 머지한 내용까지 날아가 버렸다는 것을 알았고 dev의 마지막 커밋을 돌려놓고 한이 다시 리베이스를 진행해서 해결할 수 있었다.
- 시간을 버리게 해서 너무 죄송했고, 일단 머지는 확인에 확인을 하고 진행을 해서 실수를 최소화 하고 협업 시 강제 푸시를 하면 꼭 팀원과 상의 후에 진행을 해야 한다는 것을 느꼈다.
- 버스 승객이 되지말자
- 2일째에 내가 너무 한에게 기대고 있다는 것을 느꼈다.
- 뷰모델과 퍼미션에 대한 이해도가 부족해서 초반에 한에게 도움을 받았는데, 그러다 보니 자연스럽게 한이 진행하는 대로 흘러가고, 점점 손을 놓고 있는 나를 발견하였다.
- 2일 밤에 Json을 통신을 통해서 받아오는 부분을 구현하려고 학습하다가 앞에 구현한 부분을 둘러보는데, 내가 한 게 적다는 것을 깨닫고 다시 리사이클러뷰와 통신 등 앞으로 구현할 부분에 대해서 학습을 진행하고 한에게 공유해 줄 수 있게 진행을 하였다.
- 2일째에 내가 너무 한에게 기대고 있다는 것을 느꼈다.
- 모르는 부분은 직접 구현해보자
- 요즘 학습을 진행하면서 내가 나름 잘하고 있는 부분이라고 생각했는데, 한을 보며 부족했다는 걸 많이 느꼈다.
- 이해가 안 되거나 잘 모르겠는 기술이나 클래스를 사용할 때에는 간단하게라도 실습을 진행해보고 적용하는 것이 훨씬 효율적이라는 것을 많이 느꼈다.
- 깃을 항상 신중하게 사용하자
- 😆 try
- 구현전에 실습해보기!!
- 협업 시에는 팀원과의 상의와 소통을 꼭 진행하고 프로젝트 관련 작업을 진행하자.
- 설계대로 안되더라도 설계를 진행하고 구현을 진행하자
- 로그도 좋지만 테스트 코드를 진행해보자
느낀 점
배울게 아주 많다.
알고는 있었다.
하지만 이렇게 느껴보니 더 재미있고 즐거운 프로젝트가 된듯하다.
고수님들의 코드를 많이 보고, 직접 사용해보면서 어떻게 돌아가는지 분석해보는 시간이 꼭 필요하다는 것을 느꼈다.
시간을 정하자
짝 프로그래밍을 진행하며 30분 코딩 10분 휴식이 사실 조금 짧게 느껴졌고 "이렇게 해서 진도를 나갈 수 있을까?"라는 생각이 들었는데,
실상 혼자 진행할 때 보다 빨랐고, 순수 코딩 시간도 하루 종일 앉아서 딴짓하며 코딩할 때 보다 많았다는 게 참 내가 얼마나 비효율적으로 공부를 하고 있었는지 느끼게 되었다.
앞으로는 혼자 진행하더라도 코딩 시간과 휴식시간을 짧게 가져가며 진행을 해볼 예정이다.
아키텍쳐 고민과 설계
사실 코린이인 내가 이 부분을 고민하는 게 어설프고 웃긴 건 당연한 이야기 같다.
하지만 음악을 처음 하고 소리를 처음 내는 사람이 처음부터 음악에 대한 고민을 하고 소리에 대한 고민을 하면서 연습을 하면 분명 나중에 고민을 해야 할 시기에 좋은 결과를 얻는 것을 레슨을 하며 많이 보아왔고, 나의 이런 고민들도 나중에 익숙해졌을 때 분명히 도움이 될 거라고 생각한다,
첫 짝 프로그래밍 프로젝트
처음에는 "이게 될까?"라는 생각이 없었다면 거짓말이다.
한 명이 코딩하고 한명이 큰 그림을 봐준다. 말은 좋지만 뭔가 와닿지 않았는데 이번 프로젝트로 한 같은 좋은 파트너의 중요성과 현업, 그리고 소통에 대해서 조금은 배울 수 있었던 귀중한 시간이었다.