Java 8 Lambda를 이용한 lazy evaluation 이전 포스팅에서 객체의 생성을 뒤로 미루는 방법에 대해서 얘기했었습니다.이번 글에서는 메서드를 지연시키는 방법에 대해서 알아보겠습니다. Java의 lazy execution자바는 논리 operation을 평가할때 lazy execution을 사용합니다.예를 들어fn1() || fn2() 에서 fn1()의 return값이 true라면 fn2()는 실행하지 않습니다.유사하게, fn1() && fn2() 에서 fn1()의 return값이 false 라면 fn2()를 실행하지 않습니다. 이는 불필요한 연산을 줄여서 속도를 높이는 역할을 하며, 더 효율적으로 동작하도록 합니다. 단, Java는 논리연산에서는 lazy order 또는 normal order를 사용하지만 메서드의 인수를 평가할 때는 eager ord.. 개발이야기/Java 7년 전
Java 8 Lambda를 이용한 virtual proxy pattern 람다를 이용하여 virtual proxy pattern을 구현하는 방법을 알아봅니다. 먼저 버추얼 프록시 패턴이 뭔지를 알아야 겠죠?하지만 이름은 몰랐더라도 이미 사용하는 코드에 녹아있을수도 있습니다. Virtual proxy pattern이 패턴은 어렵지 않은 구조이므로 간단히 개념만 설명하고자 합니다.일단 목적은 "lazy evaluation"입니다. 생성해서 쓰기에 버거운 객체의 초기화를 뒤로 미뤄서 초기 로딩 속도를 높이는 방법입니다.말은 거창하지만 실제로 많이 쓰이는 방법입니다. 어렵지 않고 이미 예제가 많이 있으므로 여기서 따로 설명하지는 않습니다.따라서 잘 설명되어있는 블로그를 링크합니다. 예제가 잘 설명된 글: http://ncanis.tistory.com/102개념이 잘 설명된 글: ht.. 개발이야기/Java 7년 전