일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 자바의 종류
- 자판기미션
- 프로젝트 패키지 구조
- ControllerTest
- 백준
- 상수와 Enum
- 제임스고슬링
- 윤년계산하기
- JXM
- 자바로 만들수 있는 것
- 리스코프치환원칙
- 자바 버전 다운 그레이드
- java 1000번 A+B
- Oracle JDK와 OpenJDK의 차이
- There isn't anything to compare.
- 객체지향적인 설계
- Getter Setter
- JDK
- 방어적 복사
- 우테코
- 우아한테크코스
- 인수테스트
- 자바 4334
- 상근날드
- 블랙잭 회고
- 테스트 성능 개선
- 우테코4기
- ServiceTest
- throw 와 throws 차이
- PR 오류
- Today
- Total
개발새발
[레벨1] 블랙잭 회고 본문
새로운 인사이트 📝
이번 미션을 하며 느꼈던 점을 정리하고자 한다.
미션 내용은 제일 하단 링크로 대체한다.
1. 프로그램은 흐름이다. 🌊
리뷰 시스템을 하다보면, 타인이 내 코드를 읽거나, 내가 타인의 코드를 읽는게 빈번하다.
잘 읽히는 코드를 짜려면 어떻게 해야 할까?
위와 같이 스티치가 좋은 조언을 해주었다. 앞으로 실행 흐름을 정리 한 후,
그 내용이 잘 들어나게 코드를 작성해야겠다고 생각했다.
흐름을 따라가면 과정이 들어나게끔!
2. 나만의 공부 루틴을 만들자 🔕
어떤 날은 공부가 너무나 하기 싫고, 어떤 날은 너무 재밌다.
공부가 재밌는 날 아침에는 뭘 했나? 생각해보니 아무것도 안했더라.
아침 일찍 일어나 유튜브를 몇 번 보다 보면, 공부가 재미없게 느껴지는게 당연하다.
아침에 일어나서 무의식적으로 핸드폰을 하는 습관을 버리자.
= 공부보다 재밌는 걸 공부 시작전에 하지말자.
3. 성장은 부족함을 인정하면서 시작된다. 😿
다른 사람에게 "제 코드 어때요?" 라고 물어보기 전, 해야할게 있다.
바로 창피함을 감수하고 현재 나의 부족함을 들어내는 것.
그리고 나면 후련한 마음으로 내가 보완할 점을 얻게 된다.
내 수준에 맞는 피드백이 성장에 가장 도움이 된다. 부끄럽겠지만 용기내서 부족함을 드러내자.
4. 단축키를 알면 알수록 좋다.
- 매직 리터럴, 매직 넘버를 상수로 추출할 때는 Opt + Cmd + c 을 하면 된다.
(최초는 Public 으로 추출되는데, 두번 연속으로 누르면 Private 로 설정이 가능하다.)
- 여러개 줄을 한꺼번에 작업하고 싶을 때는 Opt Opt 방향키를 누르면 된다.
5. 타입 캐스팅 중 다운 캐스팅을 할 때는 오버 플로우에 대한 처리도 필요하다.
다운 캐스팅을 할 때 Math.xxxExact() 를 사용하여 오버플로우가 나면, ArithmeticException라는 에러를 던져주자.
오버 플로우는 다운 캐스팅을 할 타입이 현재 값보다 범위가 적을 때 범위 최대 값까지만 값이 보장되고,
오버되는 값들은 사라지는 것을 의미한다. 자세한 내용은 링크를 첨부한다.
6. 상속을 사용할 때 리스코프 치환 원칙을 지키자.
상속을 하다보면, 부모 클래스의 메서드를 오버라이딩(재정의) 할 때가 있다.
이때 자식 클래스에서 부모 클래스가 의도한 동작을 함을 보장하는 것이다.
다른 동작을 한다고 해서 시스템 에러가 발생 하지 않기 때문에 유지보수 할 때 엄청난 시간이 든다..)
의도와 다른 동작의 시작점을 찾기 어려워진다. 따라서 리스코프 치환 원칙을 지켜 유지보수 하기 좋은 코드를 만들자.
관련 내용은 링크를 첨부한다.
참고
[1단계 - 블랙잭] 수달(허수진) 미션 제출합니다. by her0807 · Pull Request #277 · woowacourse/java-blackjack
안녕하세요 스티치, 수달입니다. 🦦 만나게 되어 영광입니다. 잘 부탁드립니다 !!! 스티치가 제 코드를 이해할 때 도움이 되었으면.. 하는 바람으로 아래와 같이 코멘트를 남겼습니다 🤪 수달이
github.com
[2단계 - 블랙잭(베팅)] 수달(허수진) 미션 제출합니다. by her0807 · Pull Request #304 · woowacourse/java-blac
안녕하세요 스티치:) 1차 피드백을 반영한 뒤, 요구사항을 적용한 코드입니다. ✌🏻 배팅 금액에 대한 요구사항 도출 배팅 금액은 어떤식으로 계산되는 지 요구사항 파악을 먼저 진행했습니다.
github.com
'우아한테크코스 > level1' 카테고리의 다른 글
unmodifiableList 란? (0) | 2022.03.21 |
---|---|
방어적 복사란? (0) | 2022.03.21 |
객체지향 한걸음 (0) | 2022.03.21 |
형변환(Casting) 과 오버 플로우(Overflow) (0) | 2022.03.20 |
리스코프 치환원칙 (0) | 2022.03.19 |