전체 보기
🍀

26, 27일차_구현하며 고민하기

작성일자
2023/11/13
태그
DIARY_DEVELOP
프로젝트
PreCourse
책 종류
1 more property

1. 구현하며 고민한 부분

IllegalArgumentException을 상속받으면 좋은 점.
CalendarException은 런타임 예외인 IllegalArgumentException의 특성을 가지게 되며,
Java에서는 이러한 예외를 명시적으로 처리하지 않아도 됨
즉, throws 절을 사용하지 않아도 되며, try-catch 블록을 사용하지 않아도 됨
// CalendarException.java public class CalendarException extends IllegalArgumentException { public static final String INVALID_DATE_MESSAGE = "[ERROR] 유효하지 않은 날짜입니다. 다시 입력해 주세요."; public CalendarException() { super(INVALID_DATE_MESSAGE); } public static class InvalidDateException extends CalendarException {} public static class PastDateException extends CalendarException {} public static class NonNumericDateException extends CalendarException {} public static class DateOutOfRangeException extends CalendarException {} } // MenuException.java public class MenuException extends IllegalArgumentException { public static final String INVALID_ORDER_MESSAGE = "[ERROR] 유효하지 않은 주문입니다. 다시 입력해 주세요."; public MenuException() { super(INVALID_ORDER_MESSAGE); } ... }
Java
복사
가장 핵심적인 기능부터 만드라고 코수타에서 들었다.
이를 mvp를 만드란 뜻으로 이해했는데, 그렇다면 model을 만드는 게 먼저일까? view를 만드는 게 먼저일까?
처음엔 당연히 model을 먼저 만드는 거라 생각했다. 하지만, 이는 관점에 따라 달라질 수 있단걸 설계를 해가며 느꼈다
그 이유는, 누군가는 핵심적인 기능을 사용자와 상호작용하는 것이라 생각할 수도 있기에 어쩌면 view를 먼저 만드는 게 옳다 생각할 수도 있기 떄문이다.
물론, 나는 다시금 model을 먼저 만드는 게 이번 과제에서의 핵심 기능에 더 걸맞는다 생각했다
그 이유는, model이 없으면 view와 controller가 처리할 데이터가 없기 때문이다.
따라서 나는 model > view > controller 순으로 구현하였다.
view에서 모델을 만들어 반환해도 될까? 난 안된다 생각

Today in 프리코스

TIL 작성하기
몰입
설계 보완하기
구현하기
진짜 단전에서 우러나올 정도로 너무 재밌다,,,,, 매일매일 이런 문제만 풀고 싶다.
특히, 지난 3주간 연마해온 설계 실력을 100% 발휘한 느낌이다.
내가 설계하고도 스스로 감탄 중이다. ㅎㅎ 그만큼 뿌듯하단 소리다~
Search
1일차_둘러보기, 환경설정하기
2023/10/19
DIARY_DEVELOP
1일차_둘러보기, 환경설정하기
2023/10/19
DIARY_DEVELOP