공부함

1주차 숫자야구 피드백 본문

우테코 6기 프리코스

1주차 숫자야구 피드백

찌땀 2023. 11. 6. 18:25

java랑 1주차 미션이었던 숫자야구 풀이를 해주는 영상이 있어서 복습할 겸 간단하게 정리해보고자 한다 

 

개발 전 

- 기능 요구 사항을 정리해라

- 요구사항으로부터 기능 목록을 정리해라

 

빌드 

- 빌드 도구가 있으면 build.gradle의 dependencies에 적어준 라이브러리를 저장소에서 받아온다 

 

패키지

- 관련있는 클래스파일들을 한 곳에 모은다 

- 클래스명을 다 보지 않고 패키지명만 봐도 어떤 역할을 하는지 알 수 있다 

- 패키지를 먼저 만들어서 어떤 프로그램인지 알 수 있게 하자 

- model, doamin : 다루고자 하는 서비스의 비즈니스 로직이 들어있는 영역 

 

클래스

- 클래스 이름에 어울리게 행동해야 한다 

- 객체는 클래스의 복사본이다 

- static 멤버변수는 모든 객체가 함께 공유하는 값이다 (클래스 변수)

- static 멤버변수는 굳이 인스턴스 생성할 필요 없이 바로 클래스에서 접근 가능하다 

 

불변 값 

- final을 붙여서 변하면 안된다고 지정을 할 수 있다 (상수). 상수는 기본적으로 대문자 사용, snake case로 사용 

- 바꿀려고 하면 컴파일에러를 발생시킨다 

 

객체지향 프로그래밍 

- 기능을 갖고 있는 클래스를 인스턴스화 한다 

- 필요한 기능을 역할에 맞는 객체가 수행하게 한다 

- 각 결과를 종합한다

 

 

어떤 클래스에 어떤 기능이 필요한 지 정리해본다. 위 사진처럼 

 

컬렉션

- 자바에서 제공하는 컬렉션을 활용하자 

 

커밋 단위 

- 기능 목록에서 기능을 하나 구현할 때 마다 커밋한다 

 

자동 정렬 

- 패키지를 누르고 ctrl alt l 을 눌러서 패키지의 모든 파일을 자동 정렬할 수 있다 

 

협력 

- 다른 객체의 함수를 가져다 사용한다 

 

강의에서는 입출력을 위한 클래스를 따로 사용하지는 않았다. 각 메서드 내에서 입출력을 해줬다. 

 

단위 테스트 코드 작성 

- assert를 통해 (assert는 주장한다는 뜻) 컴퓨터를 통해 결과를 검증한다 

- 코드에 버그가 발생하면 테스트코드가 알아채게 된다 

- @BeforEach @AfterEach등을 통해 중복 코드를 최소화 할 수 있다 

- @ParameterizedTest와 @CsvSource를 활용해 중복되는 테스트 코드를 줄일 수 있다.

 

 

 

 

 

 

 

 

 

 

 

'우테코 6기 프리코스' 카테고리의 다른 글

MVC 패턴  (0) 2023.11.12
프리코스 2주차 미션  (0) 2023.10.30
프리코스 1주차 미션  (2) 2023.10.29