개발/App Developer
Lazy loading 기법
강아지아빠
2010. 8. 29. 17:07
어떤 속성(프로퍼티)을 얻으려고 할 때 (getter 가 호촐될 때) 같은 이름의 속성 메서드가 호출된다.
만약 현재 값이 nil 이면 새로운 배열을 생성한다.
if(history == nil){
NSArray *may = [NSArray arrayWithObjects:~
}
history = [[NSArray arrayWithObjects:mmarch,april,may] retain];
이와 같은 방식을 게으른 로딩(Lazy loading) 이라고 한다.
즉 처음에는 nil 값을 가지고 있다가 누군가가 사용하려고 하는 시점이 되어서야
뒤늦게 객체를 생성하는 방법이다.
마찮가지로 뷰 컨트롤러가 메모리 경고를 받아서 뷰를 언로드하게 될 때는 history에 nil 을
설정하여 배열 객체를 간단히 해제할 수 있다.
이러한 게으른 로딩은 애플리케이션 최적화의 가장 기본적인 방법이고 자주 사용되기 때문에 꼭기억해 두자.