Java/모던 자바 (2) 썸네일형 리스트형 동작 파라미터화 코드 전달하기 동작 파라미터화 코드 전달하기 요구사항은 항상 바뀌게 된다. 비용을 최소화 하면서 변화의 대응하는게 좋다. 동작 파라미터화를 이용하면 자주 바뀌는 요구사항에 효과적으로 대응 할 수 있다. 동작 파라미터화란 아직 어떻게 실행할지 결정되지 않은 코드 블록을 의미한다. 즉, 코드 블록의 실행이 나중으로 미뤄진다. 동작 파라미터 책에서의 예제는 Predicate 를 이용해서 설명 하고 있다. Predicate 는 true, false 를 반환하는 함수 전략패턴을 쓰고 있는데 ApplePredicate 인터페이스를 구현한 여러 클래스를 두고 클래스에서는 필터링할 조건들을 return 시키고 있다. filterApples 라는 메소드에서 전략에 맞게 클래스를 구현해서 쓰는 방식이다. 즉 filterApples 의 .. 자바 8,9,10,11 1.1 역사의 흐름은 무엇인가? 자바 8에서는 대대적인 변화가 있었다. 멀티코어 CPU 대중화 같은 하드웨어 변화가 자바 8에 영향을 미쳤다. 자바 8이 등장하기 전에는 코어를 활요하려면 스레드를 사용하는것이 좋았지만, 스레드는 관리하기 어렵고 많은 문제가 생길 수 있다. 자바는 이런 병렬 실행 환결을 쉽게 관리하고 에러가 덜 발생하는 뱡향으로 변경되려 노력했다. 자바1.0 에서는 스레드 와 락, 메모리 모델까지 지원했었는데 이런 저수준 기능들을 활용하긴 어려웠다. 자바 5에서는 스레드 풀, 병렬 실행 컬렉션 등 강력한 도구들이 나왔고 자바 7에서는 병렬에 도움을 줄 수 있는 포크, 조인 등이 나왔지만 여전히 활용하기 어려웠다. 자바 8에서 단순한 방식으로 병렬실행을 할 수 있는 방법을 제공했다. 자바 .. 이전 1 다음