일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 모던 자바 인 액션
- 완주하지 못한 선수
- @EnableScheduling
- 스택/큐
- Java
- 프로그래머스
- kubenetes
- 알고리즘
- 커링
- 쿠버네티스
- H-index
- 다리를 지나는 트럭
- @Data
- 고차원 함수
- 크론 표현식
- 루씬 인 액션
- @Setter
- 정렬
- 전화번호 목록
- 해시
- K번째수
- 롬복 어노테이션
- 검색 기능 확장
- 스프링 스케쥴러
- @configuration
- 기능개발
- 영속 자료구조
- 가장 큰 수
- 코딩 테스트
- @Getter
- Today
- Total
목록JAVA & Spring (29)
Today I Learned
이 장의 내용 null 참조의 문제점과 null을 멀리해야 하는 이유 null 대신 Optional : null로부터 안전한 도메인 모델 재구현하기 Optional 활용 : null 확인 코드 제거하기 Optional에 저장된 값을 확인하는 방법 값이 없을 수도 있는 상황을 고려하는 프로그래밍 11.1 값이 없는 상황을 어떻게 처리할까? public String getCarInsuranceName(Person person) { return person.getCar().getInsurance().getName(); } 위 코드에서 person이 null이거나 getCar(), getInsurance()가 null을 반환한다면 어떻게 될까? 11.1.1 보수적인 자세로 NullPointerException ..
이 장의 내용 람다 표현식으로 코드 리팩터링하기 람다 표현식이 객체지향 설계 패턴에 미치는 영향 람다 표현식 테스팅 람다 표현식과 스트림 API 사용 코드 디버깅 9.1 가독성과 유연성을 개선하는 리팩터링 람다, 메서드 참조, 스트림 등의 기능을 이용해서 더 가독성이 좋고 유연한 코드로 리팩터링하는 방법을 살펴보자. 9.1.1 코드 가독성 개선 가독성을 개선한다는 것은 구현한 코드를 다른 사람이 쉽게 이해하고 유지보수할 수 있게 만드는 것을 의미한다. 코드 가독성을 높이려면 코드의 문서화를 잘 하고, 표준 코딩 규칙을 준수하는 등의 노력을 기울여야 한다. 9.1.2 익명 클래스를 람다 표현식으로 리팩터링하기 익명클래스를 람다 표현식으로 변환하면 간결하고 가독성 좋은 코드를 구현할 수 있다. 익명클래스를 ..
이 장의 내용 컬렉션 팩토리 사용하기 리스트 및 집합과 사용할 새로운 관용 패턴 배우기 맵과 사용할 새로운 관용 패턴 배우기 8.1 컬렉션 팩토리 자바에서 적은 요소를 포함하는 리스트를 어떻게 만들까? 다음 방법은 세 문자열을 저장하는데도 많은 코드가 필요하다. List friends = new ArrayList(); friends.add("Raphael"); friends.add("Olivia"); friends.add("Thibaut"); 다음처럼 Arrays.asList() 팩토리 메서드를 이용해 코드를 줄일 수 있지만, 고정 크기의 리스트이기 때문에 요소를 추가하려하면 Unsupported OperationException이 발생한다. List friends = Arrays.asList("Raph..
7.2 포크/조인 프레임워크 병렬화할 수 있는 작업을 재귀적으로 작은 작업으로 분할하여 서브태스크로 처리한 뒤, 각각의 결과를 합쳐서 전체 결과로 만드는 방식 7.2.1 RecursiveTask 활용 스레드풀을 이용하려면 RecursiveTask의 서브클래스를 만들어야하고, 추상메서드 compute를 구현해야 한다. protected abstract R compute(); compute 메서드 구현 형식은 분할 정복 알고리즘의 병렬화 버전을 사용한다. if(태스크가 충분히 작거나 더이상 분할할 수 없으면) { 순차적으로 태스크 계산 } else { 태스크를두 서브태스크로 분할 태스크가 다시 서브태스크로 분할되도록 메시지를 재귀적으로 호출 모든 서브태스크의 연산이 왑료될때까지 대기 각 서브태스크의 결과를 ..