-
클린 코드 작성하기 - 우테코를 마치며
왜 클린코드가 중요할까 프로젝트를 진행하다 보면 다른 사람의 코드를 읽거나, 요구사항이 변하는 경우가 굉장히 많았다. 4주간의 우테코 프리코스를 진행하는 중에도 요구사항 변화에 대응할 수 있어야 한다는 피드백이 있었다. 하지만 코드를 기간에 쫓겨 작성하다 보면 깔끔한 코드에서 멀어지기도 하고, 코드를 작성한 직후에는 어느 부분이 깔끔하지... Read More
-
좋은 단위 테스트 작성하기
공통 피드백 우테코 3주차를 마치고 제공받은 공통 피드백 중, 관심사 분리와 테스트 작성에 관한 내용이 눈에 띄었다. 테스트하기 어려운 것은 객체 분리를 고민하라. UI 로직이 아니라, 비즈니스 로직에 대한 단위 테스트를 작성하라. 테스트 코드도 코드이므로 리팩토링을 통해 개선해야 한다. 돌... Read More
-
생성자를 숨기는 팩토리 메서드
프리코스 1주차 돌아보기 1주차에 진행했던 숫자 야구 게임의 코드를 돌아보면, 객체 생성 시에 여러 생성자를 사용했었다. // 컴퓨터(투수)가 생성한 랜덤 숫자를 담거나, // 사용자(타자)가 생성한 숫자를 담기 위한 클래스 public class Player { private final List<Integer> numbers... Read More
-
상속과 조합 클래스
상속을 사용한 초기 디자인 이번 과제의 요구사항 중 로또 번호 5개와 보너스 번호가 일치하는지 확인하는 부분이 있었다. 이미 로또 번호 6개를 담는 클래스를 정의해둔 상황이었기 때문에, 로또 클래스를 확장하는(상속하는) 새로운 클래스를 정의하여 문제를 해결하려고 하였다. 상속으로 구현하여 Dto에서 새로운 클래스를 그대로 활... Read More
-
캡슐화를 돕는 DTO 사용기
코드의 의존성 낮추기 재사용이 가능한 코드를 만들기 위해선 코드 간 의존성을 낮춰야 한다. 의존성을 낮추기 위한 방법으로 MVC 패턴이 사용된다. MVC 패턴에서는 모델과 뷰가 서로의 존재를 모른다. 모델의 내부 구조가 바뀌든, 뷰의 표현 방식이 바뀌든 서로 영향을 주지 않아야 하기 때문이다. 하지만 데이터를 사용자에게 보여주기 위해... Read More
