1차 프로젝트 회고를 작성하기 전에 몇 번 글을 작성하고 싶었는데 생각보다 시간이 너무 금방 지나갔고
프로젝트를 시작하게 되면서 바빠져서 바로 1차 프로젝트 회고를 작성하게 되었다.
- 8월 23일 ~ 8월 말
팀원이 정해진 후 여러가지 주제를 말하던 중 하나를 선택했는데
DB를 설계하는 와중에 DB가 우리가 생각했던 것보다 너무 커진 것을 느끼게 되었다...
이건 프로젝트 기간 안에 끝내지 못할 것 같다는 생각이 들어서 같이 DB를 설계하는 팀원분과
다른 주제를 몇 개 찾아서 다음날 팀원분들에게 주제를 엎자고 했다.
사실 와이어 프레임과 플로우 차트 등 어느정도 진행된 상태라 말할까 말까 고민을 많이 했었다. ㅠㅠ
다행히도 다른 팀원 분들도 긍정적으로 받아들여주셔서 주제 변경 완료!
- 9월 초
DB 및 와이어 프레임, 플로우 차트 등을 기본적으로 설계했다.
DB는 처음 설계한 후 계속해서 수정하게 된다고 이야기를 들었는데
프로젝트 진행하면서 정말 수십번 넘게 테이블을 수정했었다.
그래서 서로 계속 수정하다보니까 아래와 같은 일이 발생하기도 했었다. ㅋㅋㅋㅋㅋ
그리고 게시판 CRUD는 제일 중요한 부분이라고 생각했기 때문에
모든 조원들이 자유 및 질문 게시판을 나눠서 CRUD를 진행했다.
솔직히 수업 들을 때는 보고 따라 입력한다는 느낌이 더 컸는데 확실히 처음부터 끝까지 직접 해보니까
완벽하게는 아니더라도 어떤식으로 동작하는지 흐름을 알 수 있었다.
또 느꼈던 점은 책을 보며 코딩하면서 우리 코드에 맞게 정말 조금 수정했는데 이렇게 많이 오류가 날 수 있나?
라는 생각을 많이 했었던 것 같다. ㅋㅋㅋ 하지만 그 오류만큼 정말 많이 배울 수 있었던 시간이었던 것 같다.~!
- 9월 초 첫번째
스프링 시큐리티를 이용해서 회원가입 및 로그인을 구현하고 싶어 팀원들이 돌아가며 며칠을 찾아봤으나 실패..
그 이유는 현재 우리가 사용하는 DB는 Oracle DB였으나 책에서는 H2 DB를 사용했었고,
인터넷에서는 거의 Maria DB를 사용해서 따라하는데 어려움이 있었다. ㅠㅠ...
아래의 사진은 어떻게든 우리 DB에 맞게 수정해보려고 했으나 계속해서 오류가 발생하는 상황의 사진..
그래서 쿠키와 세션을 사용해야하나라는 생각을 했었는데 이때까지 투자한 시간이 아깝기도 했고
DB를 바꾸면 할 수 있지 않을까라는 생각에 DB를 Oracle DB에서 Maria DB로 바꾸고
조금만 더 노력해보자고 으쌰으쌰했다.! 나는 원래 DB를 설계하던 분과 같이 테이블을 다시 설계하면서
게시판 코드를 수정했고, 원래 시큐리티를 담당하던 분이 마지막으로 시도해서 구현하지 못한다면
계속 붙잡고 있을 수 없으니 그때는 다른 방법을 사용하기로 했다.
그 와중에 하필이면 우리가 사용하던 스프링 부트 버전이 3.0 이상이라서 정말 정보가 없었다.
그래도 정말 잘 정리된 글을 찾아서 시큐리티 담당하던 팀원분이 결국 구현에 성공하셨다 ㅠㅠㅠㅠㅠ 짱짱..👍
- 9월 초 두번째
시큐리티를 진행하던 와중에 나는 다른 팀원과 함께 우리 프로젝트의 핵심 기능인 지도를 구현했다.
여기서 또 큰 난관이 있었다...! 우리가 구현하고 싶었던 기능은 메인 페이지에서 시, 군, 구를 선택해서
검색하면 다른 페이지에서 그에 해당하는 곳의 마커와 정보 리스트를 띄우는 것이였다.
우리가 사용하던 뷰 템플릿이 타임리프였는데 타임리프로 띄운 값을 숨기고 이를 이용해서
<script> 태그에서 리스트를 띄웠지만 정말 값만 출력되었을 뿐 이를 다시 CSS를 적용시키는데
어려움이 있었다. 며칠동안 애썼는데 리스트를 띄우는 동시에 CSS를 사용하지 못했다. ㅠ_ㅠ
이때 며칠동안 계속해서 코딩을 했지만 계속 눈에 보이는 결과물이 없으니까 뭔가 한게 없는 것 같이 느껴져서
프로젝트를 진행하면서 제일 힘들었던 것 같다. 아래의 사진은 포기 직전이었던 우리의 대화 ㅋㅋㅋ...
포기 직전의 우리의 문제를 해결해주신 분이 바로 시큐리티를 구현하셨던 팀원분이었다.
이 분이 팀장 역할이었는데 정말 우리 팀에서 크고 중요한 역할을 해주셨다.
솔직히 지금 생각해보면 우리는 2명에서 며칠동안 구현하려고 했던 것을 팀장 분이 혼자서 하루?만에
해결하셔서 약간의 현타아닌 현타도 잠시 왔었던 것 같기도 하다.😥
하지만 그것보다 감사함? 대단함?이 더 컸고 배우고 싶었던게 더 컸다.
(참고로 말하자면 이 문제점을 해결하기 위해서 AJAX를 사용했었다.)
- 9월 중순 첫번째
이때는 거의 프로젝트 막바지에 이르면서 댓글 기능 및 마이페이지, 지도 리뷰 구현 기능을 구현했었는데
내가 맡았던 기능은 아니었지만 댓글 기능을 구현할 때 게시판에서 댓글 작성자를 띄우는 동시에
그 댓글을 작성한 회원에게만 수정 및 삭제 버튼이 보이고 그 기능을 사용할 수 있게 하는데
어려움을 겪으셨다. 마이페이지에서는 회원 정보 수정하는데 있어서 어려운 점이 있었다.
아이디는 수정할 수 없기 때문에 그대로 가져가면서 비밀번호나 닉네임은 수정할 수 있게 해야하는데
아이디가 계속해서 수정되기도 했고 이게 해결이 되면 비밀번호나 닉네임의 유효성 및 중복 검사를 실패했었다.
하지만 결과적으로 전부 잘 해결을 했었고 리뷰 쓰기 기능은 큰 어려움없이 잘 구현했다.
- 9월 중순 두번째
발표를 앞두고 기능 구현을 마무리하고 발표 준비를 했다.
요구사항 정의서, API 명세서, ERD 등을 다시 정리해서 PPT 제작 완료!
- 9월 20일 대망의 프로젝트 발표날
절대 끝나지 않을 것 같던 총 기간 한 달 정도의 1차 프로젝트가 끝나는 날이었다.
발표를 내가 하지 않음에도 불구하고 떨렸던 것 같다.😮
프로젝트 기간 중 다른 팀의 프로젝트들도 정말 궁금했었는데 그냥 하는 말이 아니라
정말 전부 다 열심히 하셨다는게 느껴졌었다.
전부 잘하셨지만 내가 특히나 기억에 남았던 팀이 있었는데 뷰가 웬만한 웹 사이트보다 잘 만들었던 것 같다.
우리 프로젝트에서 약간의 아쉬움을 꼽자면 시간이 부족해서 뷰가 약간 아쉬웠는데 그 팀의 뷰가 정말 예뻤다.
그리고 그 프로젝트를 발표하신 분이 발표를 정말 정말로 잘하셨다.
거의 대부분의 사람들이 컴퓨터 의자에 앉아서 발표를 했었는데 그 분은 일어서서 사람들을 바라보며
자신있게 설명해 나갔고 적절하게 호응을 유도하셨다. 어떻게 절지도(?) 않고 그렇게 발표를 해나가시는지..
발표하시는 것을 보면서 진짜 제일 배우고 싶었던 부분이었다.❗ ❕
현재 2차 프로젝트를 진행 중이라 추후에 1차 프로젝트의 기능들을 정리해보도록 하겠다.
2023.10.26 - [국비 지원/국비 일기] - 국비 1차 프로젝트 회고 (2)
'국비 지원 > 국비 일기' 카테고리의 다른 글
국비 2차 프로젝트 회고(2) (1) | 2023.10.26 |
---|---|
국비 2차 프로젝트 회고 (1) (4) | 2023.10.26 |
국비 1차 프로젝트 회고 (2) (0) | 2023.10.26 |
국비 지원 한 달 넘은 후기 (0) | 2023.06.17 |
개발자 국비 지원 알아보기 (0) | 2023.03.23 |