[작년 문제 풀어보기] 5기 2주차 - 숫자 야구 게임

별의개발자커비·2023년 9월 11일
0

우테코 도전기

목록 보기
6/37
post-thumbnail

개요

이번주는 숫자 야구 게임이다. 보기에는 간단해 보이지만 나에게는 저번주의 피드백을 반영해서 철저히 지켜가며 구현하겠다는 목표가 있어서, 어렵게(?) 가보려고 한다.

요구사항

MVC 모델 사용

domain / view / controller 로 분리해서 구현하려고 한다.

  • domain - player 객체
  • view - input, output 처리
  • controller - 게임 진행 전반 처리

jdk 버전 오류

jdk 11로 세팅해놓고 쓰고 있었는데 이번 미션에 주어진 우테코 자체 메소드가 11에서는 걸리는 걸로 파악된다. 그래서 java8로 낮추면 됐는데, 뭔가 기존 설정이랑 부딫히는지 수 많은 오류를 거쳐서 해결했다. 아래는 참고한 글들.
오류메시지

java: invalid target release: 11

: build.gradle languageVersion = JavaLanguageVersion.of(8)로 맞춰주기

Process 'command '/Library/Java/JavaVirtualMachines/jdk-11.0.10.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1

: [Build, Excution, Deployment > Build Tools > Gradle] Gradle(Default) -> Intellij IDEA로 변경

WARNING: An illegal reflective access operation has occurred 

: setting, Project Structure jdk 1.8로 맞춰주기

readMe 정리하기

https://github.com/Choi-JJunho/java-baseball/blob/Choi-JJunho/docs/README.md

첫 push 전에 참고하기!

우아한테크코스 4기 프리코스 후기 (3) - Github, Git, 과제제출방법

test 코드 들여다보기

Executable

JUnit 사용법

  • 본문 발췌

함수형 인터페이스?

Java8 - 함수형 인터페이스(Functional Interface) 이해하기

verficate

[JUnit & Mockito] Verify Method Calls

  • 본문 발췌

Mock이란?

Mockito

  • 본문 발췌

테스트 내 함수 최종 해석

우아한테크코스 - 프리코스 2주차

  • 본문 발췌

Java에서 문자열이 숫자인지 확인

    private void isNumberic(String number) {
        try {
            Integer.parseInt(number);
        } catch (IllegalArgumentException e) {
            throw e;
        }
    }

Java의 어레이에서 중복 확인 - HashSet

    private void containsSameNumber(String number) {
        Set<String> set = new HashSet<>();
        String[] digits = number.split("");
        for (String digit : digits) {
            if (set.contains(digit)) {
                throw new IllegalArgumentException();
            }
            set.add(digit);
        }
    }

PR 링크

https://github.com/woowacourse-precourse/java-baseball/pull/1521

0개의 댓글