1일차
오늘부터 Part2. 게시판 서비스 강의의 `강사소개, 개발환경잡기`와 `프로젝트 기확 - 개발 목적 이해하기` 부분을 학습하였다.
공부내용을 남겨두었던 깃허브를 참고해서 Chap01의 프로젝트 기획 부분을 다시 들어보았다.
먼저 프로젝트의 개발 환경을 구성하는데
IntelliJ ultimate 버전을 사용한다. 스프링부트 개발자의 절반이상이 사용하는 인기있는 도구라고 한다.
형상관리 툴로 git을 사용한다. git을 사용하면 중간에 변경사항을 열람할 수 있고 차이점을 비교할 수 있다. 또한 롤백 등 다양한 기능을 제공하기 때문에 유용하다. 개발뿐만이 아니라 이미지 같은 것도 git으로 형상관리할 수 있다고 한다.
git kraken을 사용한다. git은 CLI(Command Line Interface)로 되어있기때문에 사용하기가 어렵고 기능들을 시각적으로 보기 힘들기 때문에 이해하기 힘들다. gitkraken는 GUI(Graphical User Interface)로 되어있기 때문에 git을 더 쉽게 사용할 수 있다. gitkraken 외에도 source tree 같은 것들이 있지만 강사님은 gitkraken을 추천하시기에 gitkraken을 사용하기로 하였다. gitkraken은 무료와 유료 버전이 있는데 강의에서는 무료 버전으로도 충분히 강의를 따라올 수 있다고 한다. 하지만 나는 학생인증을 사용해서 유료 버전을 무료로 사용할 수 있기 때문에 pro버전을 사용하기로 했다.
다음으로 개발 목적을 설명해주셨다.
개발 뿐만이 아니라 명확한 기능 요구사항을 뽑아내는 과정과 문서화 작업까지 실습을 포함한다. 또한 테스트, 배포까지 개발 프로세스 전반을 강의에서 함께 실습한다고 한다. 나는 개발은 많이 해보았지만 테스트, 배포 경험은 전무하기 때문에 이부분이 인상적이었다.
문서 작업에서는 '무엇을, '어떻게'와 '왜'를 잘 녹여내는 것이 중요하다. 문서 작업은 내용이 구체적일 수록 좋다고 한다. 하지만 과도하게 작성한다면 정보가 범람하거나 업데이트 되지 못해 잘못된 정보가 혼란을 줄 수 있다.
이번 강의에서 포함된 문서 작업은
diarams.net 사이트를 사용해서 도메인과 ERD 설계, 유즈케이스 설계
구글 시트를 사용해서 API를 디자인
깃+깃헙을 통한 커밋 메시지 작성, 프로젝트 관리 및 협업 환경 꾸미기
등이 포함된다.