본문 바로가기

개발/App Developer

Lazy loading 기법

어떤 속성(프로퍼티)을 얻으려고 할 때 (getter 가 호촐될 때) 같은 이름의 속성 메서드가 호출된다.

 

만약 현재 값이 nil 이면 새로운 배열을 생성한다.

 

if(history == nil){

      NSArray *may = [NSArray arrayWithObjects:~

}

 

history = [[NSArray arrayWithObjects:mmarch,april,may] retain];

 

이와 같은 방식을 게으른 로딩(Lazy loading) 이라고 한다.

즉 처음에는 nil 값을 가지고 있다가 누군가가 사용하려고 하는 시점이 되어서야

뒤늦게 객체를 생성하는 방법이다.

 

마찮가지로 뷰 컨트롤러가 메모리 경고를 받아서 뷰를 언로드하게 될 때는 history에 nil 을

설정하여 배열 객체를 간단히 해제할 수 있다.

 

이러한 게으른 로딩은 애플리케이션 최적화의 가장 기본적인 방법이고 자주 사용되기 때문에 꼭기억해 두자.