오늘 자바 swing을 이용한 Gui 미니프로젝트가 완전히 끝났다!
교육을 들은지 3~4주 정도후인 5월 24일부터 시작했고 3주가 조금 넘는 기간동안하여 드디어 마무리를 했다.
대학을 다닐때는 팀플 과제를 많이 했었지만 그때와는 달리 지금은 완전히 모르는 분들이고
나이대도 다양하다보니 대학때 수없이 했던 팀플과는 달리 꽤 낯설었다.
처음 배달주문 프로그램을 기획할때는 이렇게 구현을 할수있겠지! 라고 속편히 생각하고 기획을 했는데
만들고 보니 참 막막하고 어려운 수준이었다. 그래도 끝까지 포기하지 않고 팀원분들 모두 다같이
으쌰으쌰하여 최종적으로 원하던 그림까지 완성할 수 있었다.
처음에는 깃허브도 잘 사용을 못해서 너무 힘들었다. 로컬 파일을 만들어서 거기에 저장을 하라고 하셨는데
사실 git에서 만들어주는 로컬파일을 썼어도 됐던 문제였다ㅎㅎ
그리고 나는 제대로 했었던 것 같은데 이게 하나라도 다르면 문제가 되거나 나도 알 수 없는
문제가 발생해서 겨우겨우 repository를 팀원분들께 공유했다. 나 혼자할때는 쉬웠는데 팀원분들과 하려고 하니 참 어려웠다.ㅠㅠㅠ
소스코드는 오류가 날 경우 명확히 어디에서 문제가 났고 어떤 문제인지 볼 수가 있는데
깃허브는 그럴 수가 없어서 내가 너무 겁을 먹어서 그런것일 것 같다는 생각이 이제와서 들긴 한다.
그래도 지금은 팀원분들과 깃헙에 푸쉬하고 머지해서 합하고 풀해서 다같은 파일을 공유해서
사용하는 데에 매우 익숙해졌다. 코드 충돌도 침착하게 해결할 수 있게되었다...!ㅋㅋㅋ
이 프로젝트를 통해서 얻은 큰 장점 중의 하나라고 생각한다.
나는 주문내역 조회,수정,삭제(주문취소)와 리뷰작성,조회,수정,삭제를 맡았었는데
사실 어려워보여서 이 파트는 하기 싫었었는데 사다리타기의 운명으로 맡게 되었다ㅎㅎ
지금은 내가 맡은 파트가 가장 좋다ㅎㅎ왜냐면 굉장히 많이 공을 들였으니까!!
나는 내가 남들보다 못하는 것 같고 너무 부족하다고 생각을 해서
밤을 새서 만들었고 그 결과 그래도 시간이 촉박하지는 않게 할 수 있었는데 그 부분도 굉장히 뿌듯했다. 그래도 다음에는 그렇게 하지 않아야 할 것 같다. 덕분에 낮밤이 바뀌어서 해가 뜰때쯤 잠이 들기 때문이다^^....
처음에는 정말 막막하고 모르겠는데 시험도 있고 또 기간이 촉박해서 빨리 해야한다는 게
너무 부담스러웠어서 울기도 했었다. (내가 이것밖에 못하는건가 하고 진짜로 눈물 흘리면서 울었다...)
과제를 푸는 것과 내가 스스로 구상하고 만드는 것은 정말 땅과 하늘차이었다.
MVC과제를 본따서 처음에 구상을 했는데 그 덕에 ClassCastException도 발생하고
상속을 썼더니 Stream이 갈라져서 안된다는 오류도 보고 다사다난했다.
그렇게 겨우 구현했는데 수많은 오류를 뿜어대서 하나하나 고치느라고 힘들었지만
팀에 잘하시는 분이 계셔서 밤새서 검색하고 테스트하다가 안되면 여쭤볼 수 있었기 때문에 재밌게 했던 것 같다.
내 생각과는 다르게 흘러가서 오류를 뿜는 코드가 야속하기도 했지만 내가 생각한 대로
흘러가서 원하던 결과를 냈던 그 순간들을 잊을 수가 없다.
위에 말한 오류들로 인해 처음에는 결과조차 볼 수 없었는데 점점 주문내역에 뜨게 되고
주문내역에서 메뉴들이 내가 원하는 대로 뜨고 리뷰작성을 중복을 하지 못하도록 하는 메세지도 띄워보고
리뷰 수정 삭제까지 완벽하게 구현이 되는 모습을 봤을 때 정말 눈물날 정도로 기뻤다.
내가 제대로 알지 못했던 부분들에서 대부분 오류가 났기때문에
그러한 부분들을 제대로 이해할 수 있었다. (지금 글 작성중이니까 추후에 올리도록 할 예정이다!)
또 구현하면서 내가 막히는 부분을 설명하고 팀원분들에게 실마리를 얻어 해결하거나
도저히 안되는 부분은 직접 설명을 들으면서 이해를 하고 해결을 하려고 노력하였다.
항상 열심히 하시려는 분도 계셔서 나도 덕분에 힘을내서 끝까지 마무리를 잘 할 수 있었다.
강사님께서도 우리 프로그램이 가장 완성도가 높다고 하셨다.
validation check도 잘되어있고 하나의 파일로 여러 파트가 여러개의 기능을 얽혀서 하기 때문이다.
DB가 없어서 파일로 연결을 해서 썼는데 주문내역파일은 모든 파트가 다 사용하고,
리뷰내역파일은 소비자,판매자가 사용하였고, 서로 값을 바꿔 같은 객체에 대해 상태를 바꿔서 사용할 수 있는
기능을 바꾸기도 했다.
이번 프로젝트를 하면서 끝까지 모든 과정이 돌아갈 수 있도록 많은 힘을 써야겠다는 생각을 많이 했다.
나는 내 파트도 하기 힘들었지만 그래도 가능하면 모든 과정이 돌아갈 수 있도록 앞으로 노력해야겠다는 생각을 했다
우리는 한 명의 팀원이 안 하는 사람이 있어서 그 파트가 구멍이났는데
잘하시는 분이 열심히 해결해 주셨다. 물론 나도 도왔지만 그 분에 비하면 매우 미약했던 것 같다.ㅠㅠㅠ
내가 오류하나 이해하는데 걸리는 시간에 그분은 몇개를 고치셨으니ㅠㅠㅠ
우리팀은 결과물은 강사님 말씀대로 제일 좋았지만 발표영상에서 제대로 어필이 되지 못했던 것 같다.
프로그램이 가장 완성도가 높지만 그것을 어필하고 설명하는 것은 다른 차원의 일인 것 같다.
다음에는 좀더 높은 완성도를 위해서 발표영상까지 신경을 많이 쓸 것이다.
팀원들 간 코드리뷰의 통일성을 가장 많이 체크해야 할 것 같고, 소감의 경우도 fm으로 딱딱하게 쓰지말고
느꼈던 감성을 좀 섞어서 풍부하게 말해야 할 것 같다. 내가 무뚝뚝해서 그런지 이런게 쉽지는 않겠지만,,,ㅎㅎ
그리고 영상이나 ppt도 조금더 꾸미면 좋았을 것 같다.
우리팀은 다들 너무 잘했다고 이 정도면 완벽하다고 생각했는데 막상 제출을 하고 보니 아쉬운 점들이 많이 보였다.
열심히 했기 때문에 그런 것이라고 생각하면서 다음 세미나 파이널 프로젝트에서는 이런 부분까지 신경을 쓰도록 할 것이다.
나 혼자했으면 너무 힘들게 했을 텐데 다같이 고민하고 해결하면서 재미도 있었고 좋았다.
앞으로 팀이 어떻게 나뉠지는 모르겠지만 다같이 같은 팀이 되어서 또 재밌지만 이전처럼 빡세게 했으면 좋겠다ㅎㅎ
노션에 시연이랑 코드리뷰 영상을 올려놓고싶었는데 크기가 커서 올라가지 않아서 블로그에 올려놓으려고한다.
나는 내 목소리가 너무 오글거려서 듣고 싶지 않지만 그래도 열심히 했던 거니만큼 기억에 오래 남겨두고 싶다.
코드리뷰는 사실 내가 그렇게 대단한 코드를 쓴 게 아니여서 많이 부끄럽지만 그래도 올려놓고
나중에 이런 프로젝트를 할때마다 어떻게 하면 더 나아질 수 있는지 보는 용도로 할 것이다.
'Java > 프로젝트' 카테고리의 다른 글
[세미프로젝트] 시연, 코드리뷰 (0) | 2021.09.24 |
---|---|
[세미] DB 연동_테이블 분할 고민중 (0) | 2021.09.06 |
[Project] ClassCastException, StreamCorruptedException (0) | 2021.06.17 |