분류 전체보기(78)
-
TDD 예제(DateCalculator)
DateCalculator 클래스가 가지는 메서드 calculateAge : 주어진 생년월일을 기반으로 현재 날짜와 비교하여 나이를 계산합니다. calculateDaysBetween : 두 날짜 사이의 일 수를 계산합니다. isLeapYear : 주어진 연도가 윤년인지 여부를 판단합니다. 1. 테스트 케이스 작성 import static org.junit.jupiter.api.Assertions.assertEquals; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import java.time.LocalDate; public class Da..
2024.03.18 -
TDD(테스트 주도 개발)
소프트웨어 개발 프로세스에서 테스트가 개발을 주도하는 방법론 1. 프로젝트 설정 - Gradle 설정 Gradle은 Java 프로젝트의 빌드 및 의존성 관리를 위한 강력한 도구 Build system을 Gradle로 설정하고 새로운 프로젝트를 생성한다. 위와 같은 프로젝트가 생성될 것이다. dependencies { testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' } build.gradle을 보면 기본적으로 dependendies에 junit이 추가되어있는 것을 볼 수 있다. 2. 테스트 게이스 작성 TDD의 핵심은 개발 시작 전..
2024.03.18 -
Git cli 명령어 모음
1. git init - 현재 폴더를 Git 저장소로 생성 - .git 폴더가 생성됨 *.git처럼 .으로 시작하는 폴더는 숨김처리가 되는데 이를 보기 위해서는 mac기준으로 command + ahift + . 을 하면 된다. 2. cat .git/HEAD - 현재 branch를 보여줌 3. git status - 현재 상태를 보여줌 4. git add - 스테이징 영역에 추가 5. git commit - 커밋을 실행시킴 6. git ls-files —stage - 스테이징 영역에 올라간 파일들의 해시값 확인 7. git restore —staged - 언스테이지를 할 수 있음 8. git reset —hard - 해당 해시값으로 되돌아갈 수 있음 9. git switch -c - branch 생성 후 ..
2024.03.15 -
Git과 fork를 사용해서 커밋하기
1. 컴퓨터에 프로젝트를 위한 폴더를 생성한다. cd // 위치를 처음으로 mkdir devel // devel 폴더 생성 cd devel // devel 폴더로 이동 mkdir my_project //my_project 폴더 생성 cd my_project // my_project 폴더로 이동 pwd // 현재 위치를 보여줌 -> ~/devel/my_project 2. 프로젝트 폴더를 초기화한다. git init // 현재 폴더를 Git저장소로 생성 -> .git폴더가 생성됨 3. 초기 branch 이름을 main으로 설정한다. git config --global init.defaultBranch main 4. 프로젝트에 파일을 작성한다. //위치를 my_project로 이동한다. 위와 같이 따라했으면 ..
2024.03.15 -
Git 설정
mac일 경우 brew install git git 사용자 이름과 이메일 설정 git config —global user.name "이름" git config —global user.email "이메일" 이름과 이메일 확인 git config user.name git config user.email 윈도우 사용자 & 맥 사용자는 줄바꿈 표시가 다른 문제가 있음. 이를 해결하기 위한 방법 //window git config —global core.autocrlf true //mac git config —global core.autocrlf input
2024.03.15 -
제한 없는 인자
경우에 따라서 메소드 인자를 가변적으로 전달하고 싶은 경우가 있다. 메소드에 정수값을 경우에 따라서 3개, 어떤 경우엔 5개를 넘기고 싶다면 어떻게 해야 할까? 예시 public class Calculator { public int plus(int i, int j){ int sum = i + j; return sum; } public int plus(int i, int j, int x){ int sum = i + j + x; return sum; } //제한 없는 아규먼트 public int plus(int... vals){ int sum = 0; for (int v : vals){ sum += v; } return sum; } } public class CalculatorTest { public sta..
2024.03.15