1차 프로젝트 회고

바울·2022년 8월 1일
0

1차 프로젝트가 끝이났다. 기대고 많았고 걱정도 많았지만 문제없이 마무리 할 수 있어서 매우 뿌듯하고 새롭게 알게된게 많은만큼 매우 유익했던 시간이었다.

프로젝트

  • 기간 2022 7/18 ~ 2022 7/29
  • 참여인원 : FE 3 (이강철, 손민지, 김수정) BE 2 (성바울, 전은형)
  • 프로젝트설명 : 실제 자라홈 웹사이트를 기반으로 웹사이트 개발
  • 프로젝트 사이트 : turtle home
  • github : zarahome project

프로젝트를 통해 얻어 간 것들

프로젝트를 하면서 매우 지치고 힘든 상태였지만 서로 으쌰으쌰 하면서 끝까지 포기하지 않고 완주하였다. 나의 목표량이 끝난 상태였지만 프로젝트는 팀이기 때문에 옆에서 끝까지 도와주고 코드 리뷰도 수시로 해서 서로의 코드에 대해 이해하면서 프로젝트를 진행했다. 물론 프로젝트가 처음이어서 당연히 많이 부족하고 실수도 하고 아쉬운 점도 많았다. 웹 개발은 프론트 백엔드 따로가 아닌 같이 만들어 가는 거기 때문에 프론트와의 소통이 매우 중요하다는 걸 느낀 것 같다. 서로의 코드를 짜는데 집중하다 보니 나중에 통신할 때 서로의 데이터를 동일하게 했어야 했는데 이걸 생각 못 하고 코드를 짜다 보니 마지막에 시간을 썼던 게 아쉬웠다. 프로젝트내에 목표했던 기능들을 다 구현후 시간이 남아서 추가 구현을 진행했었는데 프론트 분들이랑 시간이 맞지않아 페이지에 직접 적용시켜 보지는 못 했지만 다음 프로젝트에는 꼭 적용시켜보고 싶다. 1차 프로젝트 과연 할 수 있을까..? 라는 상태로 반신반의 하면서 시작했지만 끝까지 해낸게 매우 자랑스럽다! 2차 프로젝트는 걱정이 아닌 기대 100%다!

모델링


프로젝트를 진행하면서 코드를 작성하면서 가장 많이 들었던 생각은 처음에 모델링으로 틀은 어떻게 잡고가냐가 매우 중요하다는 걸 느꼈다. 중간에 테이블을 하나씩 수정하다보면 코드도 변경해야하고 매우 손이 많이간다. 처음에 우리 백엔드 은형님이랑 고생고생 하면서 모델링을 한 보람이 있었다. 우리는 모델링으로 인해 추후에 문제가 되거나 하지는 않았다.

어려웠던기능 & 해결방법

get_or_create


매우 기억에 남는 코드중에 하나인거 같다. 장바구니에 상품을 담을경우 이미 존재하는 상품이면 수량만 올리는 코드에대해 어떻게 구현을 해야할까 라는 생각을 많이 했었다. 찾아보니 get_or_create라는 매우 신기한 메소드가 있었다. get으로 요청받은 값을 데이터베이스에서 조회후 이미 존재하는 데이터면 is_created에 있는 flase스위치가 켜지면서 create하지않고 다음 코드로 넘어가는 것이었다. 이걸 이용해서 구현하고 싶었던 코드를 구현했다. 내가 구현하고 싶었던 기능을 구현후 SUCCESS가 나올때는 기분이 매우좋고 뿌듯하고 성장하고 있다는 생각이 들어서 이맛에 코딩을 하는건가..? 라는 생각을 했던 거 같다.

integrity error


기억에 남는 코드가 또 있다면 바로 integrity예외처리 이다. 회원가입시 유저가 입력한 이메일이 중복이 되지않게 필터를 사용해서 이메일 중복에대한 에러 처리를 해주었는데 생각해보니 email필드에는 unique=TRUE가 걸려있는 것이었다. 그러면 필터로 예외처리를 해줄필요가 없으니 필터를 주석처리 한 후 통신을 해보았는데 역시 엄청난 에러가 나왔다.. 그래서 이거에 대한 예외처리에 대해 찾아보다가 integrityerror라는 데이터베이스의 관계형 무결성이 영향을 받는 경우에 사용하는 예외처리가 있는 것이었다. 그래서 이 예외처리를 적용 시킨 후 통신을 했을때 의도한대로 에러가 반환이 되어서 매우 기억에 남는 코드중에 하나였다.

느낀점

프로젝트를 진행하면서 코딩을 어떻게 해야하는지 나의 코딩 스타일은 어떤지에 대한 감이 잡힌 거 같다. 첫달에는 아예 코딩에대해 감을 잡지 못하고 내가 뭘 하고 있는지도 모르면서 코딩을 했던거 같은데 이번 프로젝트에서 내가 어떤 걸 어떻게 구현을 해야할지 구체적인 계획을 세우고 하나하나 차근차근 천천히 기능을 완성해 가면서 불과 2주전이랑 비교도 안되게 많이 성장을 했다는 걸 내 자신이 느낄정도로 성장을 한 거 같다. 나의 코딩 스타일은 최대한 나의 지식으로 검색은 일절 안하고 최대한 코드를 작성한다음 검색을통해 코드를 리팩토링 하면서 어떻게 하면 더 효율적으로 가독성 높게 만들지에 대해 고민을 해보면서 코드를 하나하나 수정해 가면서 내꺼로 만드는게 매우 재미있고 나의 스타일에 맞는 거 같았다. 이번 프로젝트를 진행하지 않았으면 평생 몰랐을 수도 있는 정보들 팁 같은 걸 얻어가서 매우 소중하고 유익했던 2주였다. 2차 프로젝트는 1차 때 아쉬웠던 걸 전부 해내고 한번했던 실수는 다시 하지않게 1차때 경험을 되살려서 더욱 완성되고 완벽한 코드를 짜는 것을 목표로 해야겠다!

0개의 댓글