분류 98

(7)초록스터디 로또 1,2 단계 테스트 코드 구현

이 글에서는 앞에 소개한 메서드에 대한 테스트 코드만 설명할 예정이다. 위에 사진과 같은 형식으로 나누어 테스트를 구현하였고, 이에 대해 소개하고자 한다.*FakeLottoNumberGeneratorpackage FakeRandomNumber;import domain.CreateLottoNumber;import java.util.List;public class FakeLottoNumberGenerator implements CreateLottoNumber { @Override public List getRandomLottoNumber() { return List.of(1,2,3,4,5,6); }} 앞 글에서 설명한 인터페이스를 상속받아 랜덤 로또 넘버가 잘 생성되는지 검증하기..

(6)초록스터디 로또 1,2 단계 구현

로또 미션의 전체적인 틀은 다음과 같다.  로또 미션은 클린 코드를 목표로 진행되는 미션인 것 같다.  원래는 레이싱카 미션이 앞에 있는데 초록스터디 하기 전에 멘토님과 다른 스터디를 진행하면서 레이싱카를 구현했기에, 레이싱카 미션은 협의 하에 뛰어넘기로 하였다. 로또 1,2 단계 기능 구현 목록이다  이번 로또 미션에서는 일급컬렉션과 원시값 포장이 핵심으로 느껴졌다. 일급컬렉션에 대해서는 들어본 적 있지만, 원시값 포장은 나에게 너무 생소했다. 그래서 여러 블로그와 문서를 참고하여 일급컬렉션과 원시값 포장에 관한 개념을 익히고 기능 구현을 시작했다.로또 1,2 단계 기능 구현 도메인 객체는 다음과 같이 나누었다.  도메인 객체 하나 하나 뜯어보며 내가 썼던 코드를 복기해봐야겠다.* LottoContro..

(5)초록스터디 : 계산기 구현 PR 후기

이전에 작성한 코드를 토대로 멘토님께서 코드리뷰를 해주셨습니다.!!     이전 코드를 잘 구현하지 못한 것 같아 코드리뷰를 토대로 처음부터 코드를 다시 짤 각오까지 하였지만, 멘토님께서 위와 같이 말씀해주셔서 생각보다 놀랐습니다.  생각보다 컨벤션 오류가 많은 것 같아서 '자바 생활체조' 책을 사서 한 번 읽어볼 예정이다.  이 코드는 저번에 멘토님이 시범 보여주셨던게 기억나서 한 번 사용해 보았다. 이에 대해서 멘토님께서 왜 사용하였는지 물어봐주셨고, 다음과 같은 답변을 남겼다.  네이밍 부분에서 지적을 많이 당했고, 네이밍 하는게 생각보다 어렵다고 느껴졌다. 네이밍에 자료형을 사용하는 것은 좋지 않다는 얘기를 멘토님께 들어서, 다음에 참고하여 코드를 작성해야겠다. 근데 왜 자료형을 사용하는 것이 좋..

(4)초록스터디 step1 : 문자열 계산기 구현과 JUnit5 테스트

**주의사항** 모든 코드는 내 생각을 바탕으로 작성하였으며, 완벽하지 않을 수 있음. 참고해주시면 감사하겠습니다~~  문자열 계산기 기능 요구사항은 다음과 같다.먼저, MVC 패턴으로 구현하는 것을 목표로 하였고 의존성을 최대한 만들지 않고자 하였습니다.파일 형식은 이런 식으로 만들었습니다. 이제 각 파일을 하나 하나 뜯어봅시다!!* InputViewpackage view;import java.util.Scanner;public class InputView { private static final Scanner input = new Scanner(System.in); public String getString() { return input.next(); }}InputView..

(3)초록스터디 step1 - 초간단 계산기 구현: 계산기 MVC 패턴 구현, JUnit5 테스트 적용

드디어 !! Junit5 단위 테스트 적용할 시간이다..! 빨리 테스트 구현해보고 싶움.일단 계산기는 다음과 같이 구현했따.package domain;public class Calculator { final int DO_NOT_BE_DIVIDE_NUMBER = 0; public int add(int num1, int num2) { return num1 + num2; } public int subtract(int num1, int num2) { return num1 - num2; } public int multiple(int num1, int num2) { return num1 * num2; } public int divide..

(2)초록스터디 step1 - 초간단 계산기 구현 : 계산기 구현과 JUnit5

앞서 블로그에 소개한 순서대로, 공부를 진행해보겠다. 1. 계산기 메서드 구현public class Calculator { public static int add(int num1, int num2) { return num1 + num2; } public static int subtract(int num1, int num2) { return num1 - num2; } public static int multiple(int num1, int num2){ return num1*num2; } public static int divide(int num1, int num2){ return num1/num2; }} 일단은 요..

(1)초록스터디 시작! step1 - 초간단 계산기 구현

초록스터디를 시작해 보았따.  step1 - 초간단 계산기 구현 과정은 다음과 같다.1. 계산기 구현 2.Junit5 단위 테스트 학습3. 계산기 테스트 진행1. 문자열 계산기 구현2. AssertJ 학습3. 문자열 계산기 테스트 진행 전체 코드 리팩터링 위와 같이 크게 세 단계로 진행되는 것 같고, 처음이지만 열심히 학습해보면서 Junit5와 AssertJ가 무슨 차이점을 가지고 있는지 알아봐야겠다.  내가 알던 자바는 그냥 문법 위주였는데, 이번 기회를 통해 일급 컬렉션, 원시값 포장 같은 개념을 익히고 학습하고 싶다.