23/10/11

Laejun Kim·2023년 10월 11일
1

TIL

목록 보기
8/89

팀 소개 페이지 제작 프로젝트 회고

처음 해본 협업! 너무 재밌고 즐겁다.

Github을 이용해서 개발자들이 하나의 프로젝트를 함께 진행한다는 이야기는 여러번 들어서 알고 있었지만 실제로 어떤 식으로 이루어지는지는 전혀 감을 잡지 못하고 있었는데 직접 해보니까 생각외로 잘 되는것도 신기하고 팀원이 맡은 부분이 완성되어서 자동으로 추가 되는 것을 보는건 신선한 경험이었다.

주어진 시간 내에 넣고자 했던 기능들을 모두 넣었으며, 모두 정상적이게 작동하는 것을 보는 즐거움은 잊기 어려울것 같다. 기술적으로는 당연히 아주 초보적인 수준이겠지만 그래도 지금 우리가 만들수 있는 가장 멋진 웹사이트를 만들어냈다.

깃헙은 생각보다 어렵다

처음 사용하는 tool 이니만큼 어려운게 당연하겠지만 이미 하나의 프로젝트를 완성한 지금도 꽤 복잡하게 느껴진다.
특히 commit 과 push 할때 혹시라도 내 실수로 남이 열심히 작업해 놓은 코드를 망치지는 않을까 하는 두려움때문에 현재 브랜치를 몇번이고 확인하게 되었다.

물론 망친것을 복구할 방법도 당연히 있을테고, 그 방법도 언젠가는 익숙하게 다룰수 있어야 하겠지만 이번 프로젝트를 하면서는 최대한 그럴 일 자체가 생기지 않도록 하려고 노심초사했던것 같다.

그나마 Github desktop을 이용했기 때문에 terminal을 직접 다루지는 않았지만 당장의 편의를 위해 terminal 명령어랑 친해질 기회를 놓친 것이 아닐까 하는 걱정도 마음 한구석에는 있다.

남이 쓴 코드를 보는건 공부가 된다

팀프로젝트를 하면서 또 느낀것중 하나는 남이 쓴 코드를 보는게 공부가 많이 된다는 것이다. 한번 배우긴 했으니 실제로 써본적은 없는 코드를 팀원이 사용하는것을 보면 그 코드가 실제로 어떤식으로 사용되는지도 알 수 있고 궁금한게 있으면 직접 물어볼수도 있다는 점이 좋은것 같다.

남이 쓴 코드를 봐도 모르는 경우도 있다

이번 프로젝트에서 firebase를 이용하여 댓글 기능을 구현한 코드가 그런데, 그 부분을 작업한 팀원이 친절하게 설명해 주었는데도 불구하고 나더러 그 기능을 한번 만들어 보라고 하면 못할것 같다.

남이 설명해줬을때 그걸 알아듣고 자신의 지식으로 삼기 위해선 필요최소한의 본인 실력/지식이 필요한 것이다.
스스로의 부족함을 많이 느꼈고 firebase는 튜터님도 강조한 부분인 만큼 반드시 따로 시간을 내서라도 한번 혼자 만들어보겠다고 다짐해 본다.

내가 쓴 코드가 남의 손에서 더 빛을 발하기도 한다

분명 내가 생각했을때 최선을 다해서 만들어 두었다고 생각한게, 팀원의 손을 거치고 나니 더 멋진 기능이 추가되고 더 완성도 높은 코드가 되는 경험을 했다.

list 서랍을 펼쳤을때 화면속 다른곳 아무데나 눌러도 서랍이 다시 닫히게 하는 기능이라거나, mouseover 에 대응하여 아래에 밑줄이 생기는 기능같은건 나 혼자 작업했다면 절대 만들어지지 못했을 것이다.

부족한 내 코드를 더 멋지게 만들어준 동료들에게 감사한 생각이 들었고, 무엇보다 나도 꼭 내 동료들에게 그런 사람이 될수 있도록 해야 겠다는 생각이 강하게 들었다.

KPT 팀회고록 (팀원과 함께 작성)

Keep (잘한 것 / 유지하고 싶은 것)

  • 모르는 것 포기하지 않고 알려고 했던것
  • 다른 사람이 쓴 코드 보고 이해 안가는 부분 그 사람에게 물어보기!
  • 적극적으로 git 사용하려고 노력 (개인별로 branch 생성하여 작업후 main 에 merge)
  • 회의 시간 정하고 그 때까지 각자 할 일에 집중하기
  • 서로 존중하고 배려하면서 존칭 까지 써줌
  • 성실한 출결 관리

Problem (문제 / 못한 점)

  • 첫 구조부터 깔끔하게 정리하면서 코드를 쓰지 못해 후에 원하는 파일과 요소를 찾기 힘들었음
  • 파일과 링크가 꼬일까 봐 겁먹고 원하는 걸 과감하게 구현하지 못함
    기획 단계에 조금 더 시간 쓰기
  • 중간에 '이건 아니지 않나' 란 생각이 들었을 때 과감히 피봇하지 못함.
  • CRUD에서 CRD만 구현되었고, Update 는 구현하지 못함.
  • 방명록 삭제 기능에서 누구나 다른 사람이 작성한 방명록을 삭제할 수 있다는 문제점이 있음.
  • 방명록에 아무 내용을 입력하지 않고 제출을 해도 db에 저장되지 않는 단점이 있다.
  • 전역 CSS변수를 미리 정해 두었더라면 보다 쉬웠을 것.
  • 파일들의 경로를 일관되게 관리하지 못했음.
  • 변수명을 쓰는 방식이 일관되지 않아 통일성이 부족했음.

Try (시도할 점)

  • 다른 팀원이 작성한 코드 분석하고 내 것으로 만들기
  • 시작하기 전에 전역 CSS변수는 다 합의하고 만들어둔 채로 시작하기
    (ex. variables.css)
  • 방명록에서 수정 기능을 추가해 보려고 시도할 필요가 있음.
  • 방명록 입력 시 비밀번호를 입력하고, 삭제할 때 입력한 비밀번호와 일치할 때만 삭제되도록 수정할 필요가 있음.
  • 방명록 input 태그에 아무 값도 입력하지 않았다면 방명록이 제출되지 않도록 수정할 필요가 있음.
  • snake_case 또는 camelCase 로 변수 쓰는 방식을 사전에 통일한다.
    기능별로 파일 분리
  • 시작할 때 구조를 깔끔하게 정리하면서 코드를 작성하고, 작성한 코드에 대해 주석 처리도 해주는 게 필요할거 같다

Special thanks to 김미희, 한혜원, 민준혁, 장가을

1개의 댓글

comment-user-thumbnail
2023년 10월 11일

잘 보고 갑니다... 굿굿 북마크 추가해 둡니다

답글 달기