[우아한테크코스 5기] 프리코스 3주 차 회고

Sungw__k·2022년 11월 24일
0
post-thumbnail

개요

우테코를 시작한지 어느덧 3주나 지났다. 뭔가 구현하면서 잘 모르고 사용하는 부분을 심도 있게 공부하면서 구현하고 싶지만 일주일 내에 다른 일도 하면서 과제도 마무리 해야하는 상황이다 보니 이런 점이 아쉽다. 탈락하면 다시 구현해보면서 공부해야지

아무튼 3주 차 미션은 로또 프로그램 이다.

이번 주 차에는 저번 주에 사용한 클래스를 분리하는 연습, 도메인 로직에 대한 단위 테스트를 작성하는 연습을 중점에 두고 학습하는 과제를 내주었다. 그래서 이번에는 이 두가지에 중점을 두고 미션을 진행했다.

내 PR


3주 차 공통 피드백

비즈니스 로직과 UI 로직을 분리한다.

비즈니스 로직과 UI 로직을 한 클래스가 담당하지 않도록 한다. 단일 책임의 원칙에 위배된다.

객체의 상태 접근을 제한한다.

필드는 private class 필드로 구현한다. 객체의 상태를 외부에서 직접 접근하는 방식을 최소화 한다.

객체는 객체스럽게 사용한다.

데이터 처리를 위해 무분별한 getter 사용으로 데이터를 꺼내기 보다 객체에 메시지를 던지는 구조로 바꾸어 데이터를 가진 객체 내에서 처리하도록 한다.

전체 피드백


3주 차 회고

구현하고 나서 피드백을 보고 나니 너무 대충 분리했다는 생각이 들었다. 클래스를 분리할 때 입출력 로직, 각 기능을 맡는 모델, 이들을 제어하는 컨트롤러(app) 그 외 상수, 유효검사, 유틸 등으로 MVC패턴을 이용해 분리했어야 했다.

그리고 객체의 필드들을 외부에서 접근하지 못하도록 private로 지정하여 외부로의 접근을 차단하여 중요한 데이터의 접근을 막고 무분별하게 값이 변경되지 않게 해야한다.

0개의 댓글