Writing

작업 노트

기술 자체보다 어떤 문제를 왜 그렇게 풀었는지에 초점을 둡니다.

아이템 48. 스트림 병렬화는 주의해서 적용하라.

이펙티브 자바 아이템 48. 스트림 병렬화는 주의해서 적용하라. 스트림 병렬화를 하면 어떻게 될까? 위에 소스는 응답하지 않는다. 이유는 데이터 소스가 Stream.iterate거가 중간연산으로 limt를 쓰면 파이브라인 병렬화로 성능을 개선할수 없다. 대체로 스트림의 소스가 ArrayList, HashMap, HashS

3 min read

아이템 47. 반환타입으로 스트림보다 컬렉션이 낫다.

이펙티브 자바 아이템 47. 반환타입으로 스트림보다 컬렉션이 낫다. 반환타입으로 스트림보다 컬렉션이 나은 이유가 둘다 iterable을 구현하고 있지만 스트림은 iterable을 extend 하지 않아서 loop문이 정상적으로 동작 되지 않는다. 그래서 스트림으로 반환하면 무조건 forEach문을 사용해야 된다 그래서 선

11 min read

아이템 46. 스트림에서는 부작용 없는 함수를 사용하라

이펙티브 자바 아이템 46. 스트림에서는 부작용 없는 함수를 사용하라. 스트림 패러다임의 핵심은 계산을 일련의 변환으로 재구성하는 부분이다. 이때 각 단계는 가능한 한 이전 단계의 결과를 받아 처리 하는 순수 함수여야 한다. 순수 함수란 입력만이 결과에 영향을 주는 함수이다. 그래서 side effect가 없어야 된다.

18 min read

아이템 45. 스트림은 주의해서 사용해라

이펙티브 자바 아이템 45. 스트림은 주의해서 사용해라 자바8에 추가된 스트림 API 핵심은 두가지 이다. 스트림은 데이터 원소의 유한 혹은 무한 시퀀스를 뜻한다. 스트림 파이프 라인은 이 원소들이 수행하는 원소 단계를 뜻한다. 스트림 파이프라인은 소스 스트림으로 시작되 종단 연산으로 끝나며, 그 사이에 하나 이상의 중간

13 min read

java stream 예제

java stream 예제 여기에 글을 번역한 것입니다. 이 예제 중심 자습서에서는 Java 8 스트림에 대한 심층적 인 개요를 제공합니다. StreamAPI 에 대해 처음 읽었을 때 Java I / O InputStream와 비슷하게 들리며 이름에 대해 혼란스러워했습니다 OutputStream. 하지만 Java 8 스트

41 min read

인터페이스 default 메소드로 기존 인터페이스를 해치지 않게 확장 하기

인터페이스 default 메소드로 기존 인터페이스를 해치지 않게 확장 하기 위에 인터페이스를 상속받아 구현한 케이스 실행결과 위에 인터페이스에 하나를 추가하면 상속받은 클래스에서 컴파일 에러가 난다. 여기서 편하게 추가 할수있는 방법은 실행결과 그럼 이런 경우에는 한번 보자 컴파일 메시지 같은 이름에 동일한 디폴트 메소드

3 min read

아이템 44. 표준함수형 인터페이스를 사용하라.

이펙티브 자바 아이템 44. 표준함수형 인터페이스를 사용하라. 자바가 람다를 지원하면서 API를 작성하는 모범사례도 바뀌게 되었다. 상위클래스의 기본 클래스를 재정의 하여 원하는 동작을 하게 만드는 템플릿 메서드 패턴의 매력이 크게 줄었다. 먼저 함수형 인터페이스에 대해서 알아보자 위에 형태가 가장 기본적인 함수형 인터페

5 min read

아이템 43. 람다보다 매서드 참조를 사용하라.

이펙티브 자바 아이템 43. 람다보다 매서드 참조를 사용하라. 람다가 익명 클래스보다 가장 큰 나은점은 간결함이다. 자바에서 람다 보다 더 간결하게 만들수 있는것이 있는데 그것은 메서드 참조이다. 실행결과 위에선 람다를 사용한 경우 코드 이다. 다시 메서드 참조를 사용하면 실행결과 코드가 간결해진다. 그럼 반대의 경우는

3 min read

Apache JMeter로 부하테스트 하기

Apache JMeter로 부하테스트 하기 위에 제이미터 사이트에서 다운로드를 합니다. 파일 압축을 풀고 폴더에 들어가서 jmeter.bat를 실행합니다. 그럼 실행이 되는데 전 tps 그래프가 보고 싶으니 플러그인을 깔겠습니다 위에 사이트에서 다운로드를 받고 lib/ext 폴더에 넣어 준다 다시 실행하면 Options

2 min read

메소드 레퍼런스(Method References)

메소드 레퍼런스(Method References) 당신은 사용 람다 표현식을 익명 메소드를 만들 수 있습니다. 그러나 때로는 람다식이 기존 메서드를 호출하는 것 외에는 아무것도 수행하지 않습니다. 이러한 경우 기존 방법을 이름으로 언급하는 것이 더 명확합니다. 메서드 참조를 사용하면이 작업을 수행 할 수 있습니다. 그들은

6 min read