책을 읽으면서 공부한 내용입니다.
책 제목: 스프링 부트와 AWS로 혼자 구현하는 웹 서비스
1장에서 배운 내용 (책 50쪽)
1-1. 인텔리제이를 비롯한 각종 IDE를 관리하는 툴박스 소개
1-2. 인텔리제이의 설치와 기본 사용법
1-3. mavenCentral, jcenter 비교
1-4. 스프링 부트 프로젝트와 그레이들 연동 방법
1-5. 인텔리제이에서 깃허브 사용하는 방법
인텔리제이의 설치와 프로젝트 생성하는 부분은 생략하였다.
책에서는 깃허브 동기화 후 커밋을 할 때 .idea 폴더를 커밋 대상에서 제외한다. 프로젝트 실행시 자동으로 생성되는 파일이기 때문이다. 이때 .ignore 플러그인을 사용하면 편리하게 커밋을 할 때마다 제외할 수 있다.
.gitignore 파일
.ignore 플러그인
cmd + shift + A 단축키로 플러그인 Action을 검색할 수 있다. 설치 후 플러그인 적용을 위해서는 인텔리제이를 dock에서 지웠다가 다시 켜야 한다.
cmd + N 단축키로 새로운 파일을 생성할 수 있다. 생성목록에서 .ignore file - gitignore file(Git)을 선택한다.
새로운 .gitignore 파일을 생성(generate)한 뒤 아래의 코드를 추가한다.
.gradle
.idea
2장에서 배운 내용 (책 78쪽)
2-1. TDD와 단위 테스트란
2-2. 스프링 부트 환경에서 테스트 코드를 작성하는 방법
2-3. 자바의 필수 유틸 롬복의 사용법
TDD: Test Driven Development(테스트 주도 개발)의 줄임으로 테스트 코드를 먼저 작성하는 것을 의미한다.
(이미지 출처 https://marsner.com/blog/why-test-driven-development-tdd/)
(1) Red: 실패하는 테스트를 작성
(2) Green: 테스트가 통과하는 프로덕션 코드를 작성
(3) Refractor: 테스트가 통과하면 프로덕션 코드를 리팩토링 (위키피디아에서는 리팩토링을 결과의 변경 없이 코드의 구조를 재조정하는 것으로 설명한다)
아래의 링크에서 TDD에 대해 보다 자세한 내용을 볼 수 있다.
링크텍스트
단위 테스트란 TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성하는 것이다.
테스트 코드 작성을 돕는 프레임워크 중 xUnit이 대중적으로 사용된다. 이때 x는 개발환경으로, x에 따라 Unit 테스트를 돕는 도구라는 뜻이다. 책에서는 자바용인 JUnit을 사용하고 있다.
롬복은 자바 개발할 때 자주 사용하는 코드 Getter, Setter, 기본생성자, toString 등을 어노테이션으로 자동 생성해준다.
compile('org.projectlombok:lombok')
위의 코드 작성 후 새로고침하여 의존성(라이브러리)을 내려받을 수 있다.
롬복 플러그인 설치
cmd + shift + A 단축키로 플러그인 Action을 검색할 수 있다. 설치 후 플러그인 적용을 위해서는 인텔리제이를 dock에서 지웠다가 다시 켜야 한다.
기존 코드를 롬복으로 리팩토링