지난 주에 무사히 토이 프로젝트를 끝마치고, 이번 주에는 대망의 풀스택 미니 프로젝트를 하게 되었다.
총괄매니저님께서 경고?하셨듯이 하루만에(익일 06:00까지 제출) 미니 프로젝트를 완성해야만 하기에 시간이 빠듯했다.
나는 6조에 배정되었는데, 지난 번 토이 프로젝트를 함께했던 팀원 한 명이 있어서 무척이나 반가웠다.
시간이 촉박한 관계로 거창한 기능보다는 기본에 충실한 CRUD 기능을 기반으로 한 애플리케이션을 만들어보고자 했다.
프로젝트 명은 Daily Note로, 달력 형식의 메인 화면에 날짜를 클릭하여 일정이나 메모를 추가하는 기능을 구현했다.
각 페이지 화면을 상상하여 스케치해보고, 어떤 기능을 추가해야하는지 분류했다.
1. CRUD 관련
- 날짜를 누르면 해당 날짜의 데이터를 전부 읽어와 화면에 출력하는 기능 (Read)
- 해당 날짜에 일정을 추가하는 기능 (Create)
- 등록된 일정을 수정하는 기능 (Update)
- 등록된 일정을 삭제하는 기능 (Delete)
2. 로그인, 로그아웃 기능 (Cookie, jwt 사용)
3. 일정이 있는 날은 달력에 표시하는 기능 (main 페이지)
Github는 팀장님이 메인 repo를 생성한 후에, fork를 통해 내 repo로 끌어와 로컬에 clone하여 사용했다.
팀원 중 2명은 OT주차에 웹개발 종합반을 수강하고 오신 분들이였는데, GitHub에서 많이 어려워 하셨다.
다행히도, 팀장님과 나는 지난 프로젝트를 경험해서 GitHub 사용법을 어느정도는 알고 있었기에 GitHub 세팅에 소요되는 시간을 많이 단축할 수 있었던 것 같다.
결과적으로, 위의 기능들을 모두 구현하여 프로젝트를 완성했고, 성공적으로 발표를 마칠 수 있었다.
https://hanghae99.spartacodingclub.kr/v2/exhibitions
Daily-Note GitHub
https://github.com/Adult96/daily-note
느낀 점
기본기가 아직 많이 부족하다.
편리한 프레임워크나 패키지들을 사용헀지만, 정작 형변환이나 서버에 있는 데이터를 프론트로 전달하는 방법을 몰라 시간이 많이 소요됐다. 지금은 파이썬으로 백엔드를 구현했지만, 이후 스프링으로 서버를 구현할 때는 기본기를 더 열심히 다져서 최종프로젝트에 임할 수 있도록 해야겠다.
백엔드라도 프론트엔드는 공부해야한다.
주특기로 스프링을 희망하고 있다고해서 퇴사 후 지금까지 자바만 쭉 공부해왔던 것 같다. 막상 프로젝트에 들어가서 협업을 진행해보니 프론트 단에서 데이터가 어떻게 넘어오는지 알아야하고, 어떤 버튼에 기능을 연결해야하는지도 알아야했다.
프론트 전반을 총괄하신 분이 웹개발 종합반에서 보아왔던 코드들이 아니라 자바스크립트로 좀 더 효율적인 코드로 프론트 단을 구현하셨는데, 자바스크립트를 잘 알지 못했는지라.. 프론트 단에서는 ajax 코드 외에는 작성할 수가 없어서 답답했다.
머릿 속에는 어떤 프로세스로 이 기능을 구현해야할지 그려지는데, 버튼이 어느 function에 연결되어 있는지, html의 속성을 어떻게하면 가지고 올 수 있는지 등.. 기본적인 자바스크립트 지식이 있었다면 도움 없이도 충분히 여러 기능을 스스로도 구현해볼 수 있지 않았을까 하는 아쉬움이 남는다.
GitHub를 통한 협업 프로세스
GitHub를 통해서 작업을 진행하였지만, 아직까지 완벽히 이해하고 사용하고있지는 못한 것 같다. branch와 Merge, 그리고 충돌이 발생하면 어떻게 처리해야하는지에 대해서 조금 더 공부가 필요한 것 같다.
또, Merge가 진행된 origin repo를 다시 내 원격 repo로 fork하고 Pull할 때 짜잘한 에러가 많이 발생했다. 임시 방편으로 프로젝트 폴더를 삭제하고 다시 clone을 땡겨오는 등의 방법으로 진행했지만 에러가 발생하는 원인을 정확히 파악해둘 필요가 있다.
도전에 두려워하지 않을 것. 힘든 만큼 배우는 것도 많다.
OT 주차에 웹개발 종합반을 들었던 수강생들과 토이 프로젝트를 경험했던 수강생들끼리 출발점이 조금은 달랐다는 것을 느꼈다. 그 동안 어려운 것이 있다면 돌아가는 습관을 가지고 있었는데, 이번 기회에 도전의 가치와 노력과 시간은 결코 배신하지 않는다는 점을 알게 되었다.
앞으로의 일정에 쉬운 길과 어려운 길을 선택할 수 있다면, 좀 더 어렵더라도 망설임 없이 도전해봐야겠다는 생각이 든다.
'항해99' 카테고리의 다른 글
항해 99 - 2023.01.19 TIL (0) | 2023.01.19 |
---|---|
항해 99 - 2023.01.18 TIL (0) | 2023.01.19 |
항해 99 - 2023.01.12 TIL (0) | 2023.01.12 |
항해 99 - 2023.01.11 TIL (0) | 2023.01.12 |
항해 99 - 2023.01.10 TIL (0) | 2023.01.10 |