-
Notifications
You must be signed in to change notification settings - Fork 38
20210222
tmdgusya edited this page Feb 22, 2021
·
1 revision
- 첫 출근
- 아침 출근히 상당히 힘들다..
- 회사가서 세팅하는데 시간을 대부분 쏟은거 같음
- 백기선 강의가 생각보다 괜찮았음
- Chess 리뷰받으면서 배우는것이 도움이되고 있음
- Chapter11 넘어가기전까지는 크게 어려운내용은 없었음
- 연휴에 공부하려했으나 본가에서 휴식함
- 요즘 운동을 해야될것 같다는 생각이듬
- 지난주에 프로젝트를 진행하느라 바빴음
- DB B+Tree 자료구조를 구현해봤는데 개념적으로 좋은 경험이였음
- 넥스트 스텝에서 리뷰어로 활동 제안 받음 -> 다음주부터 이거때문에 바빠질것 같음.
- 다음 스터디는 3월 4일 목요일
- 스터디 주제는 조금 더 생각해보고 결정하자
- 코틀린?
- 자바의 Throwable 이 무엇인지를 나타내는 소개 페이지의 느낌.
- 아이템 71과 연관지었을때 CheckedException 의 경우 호출하는 쪽에서 복구 로직이 이루어져야 하기 때문에 복구할 수 있는 상황에서는 CheckedException 을 사용해야 함.
- 반대로 더이상 진행될 이유가 없는 경우 unCheckedException 을 사용하라
- CheckedException
- 호출하는 쪽에서 복구해야만 하는 Exception
- Stream 안에서 사용할 수 없음
- Transaction Rollback 되지 않음
- unCheckedException : 더이상 실행해도 복구가 불가능한 Exception.
- Transaction Rollback
- Exception, RuntimeException, Throwable, Error 는 직접 사용하지 말자.
- 자주 쓰이는 표준 예외: IllegalArgument, IllegalState, NullPointer, IndexOutOfBounds, ConcurrentModification, UnsupportedOperation
- List 인터페이스의 내부 구현체인 iterator에서 발생할 수 있는 예외는 NoSuchElement..
- 반면 List Interface 에서는 IndexOfbounded exception.
- 내부 구현체에서 발생한 에러 -> 추상화 레벨(List interface) 단에서 발생시키는 게 맞는 것.
- 사용자는 외부 추상화 수준만 알면되니까..
- Exception Chaining
- 가능하면 자바독을 잘 작성하자...
- 커밋메세지도 잘 적자..
- checked exception 의 경우에 유용할 듯함
- 예외 발생 원인과 관련있는 정보를 담아서 보내면 좋다.
- Item 72 내용과 상충되는 내용이 있다고 생각됨.
- 호출된 메소드가 실패했을때 어떤 전략으로 대체해야 할지
- 제일 좋은 방법은 불변 객체로 설계하는 것
- 가변 객체를 사용해서 실패시 롤백할때 복구과정이 복잡함
- 예외를 무시하지말자
- synchronized : 원자적 수행 , 배타적 수행
- volatile : 원자적 수행이 가능한 변수를 이용할때 스레드 간의 통신을 위해 사용
- 메모리 캐쉬와 연관지었을때 volatile 은 각 스레드 마다 가지는 메모리 캐쉬? 를 보게 해주는 것이 아니라, 공유되는 메모리 상의 변수를 보여주는 것
- 원자적 수행 구분이 첫번째, 그 이후 배타적 수행에 대해 생각
- 자바 메모리모델
- JSR133
- 80, 84 같이 진행
- roach