개발 관련/iOS SWIFT

[Swift] lazy 키워드

magpiebros 2022. 10. 19. 21:33
반응형

안녕하세요 맥파이입니다.

 

아직 내부적으로는 ObjC를 사용하고 있지만, 시대에 뒤쳐지는게 싫어서 swift 미니 프로젝트를 개인적으로 진행중입니다.

공부할것도 많고, 다시 자기개발을 진행하면서 많은것을 느끼며 배우고 있어요.
하고 싶은게 많지만, 제대로 공부하기 위해서 하나씩 정리하려고 합니다.

 

lazy 키워드

var name: String
lazy var lazyVaue: String = {
	return name
}()

 

lazy를 사용하면 초기에 불필요한 메모리 할당을 피할수 있습니다.

 

이게 어디에 좋은거냐? 불필요하다!!

난 그냥 쓸거다!!

이러시는 분들 많을것 같습니다.

 

저와 같은 경우에는 현업들의 요구사항에 시달릴때가 있습니다.

"앱이 느리다. 개똥같이 만든게 아니냐? 빨리 빠르게 고쳐놔라" 라고 요건이 올수도 있습니다.

현업이 실제로 저렇게 말하지는 않습니다.

웃자고 픽션화 한겁니다. 오해하지 마세요.

 

이때 lazy를 사용해서 성능을 높일수도  있습니다.

어떻게 속도를 높일수 있냐구요?

lazy를 사용해서 필요한 시점에 메모리 할당을 이루어지게 한다면!!!

즉, 안쓰는 놈은 쓸때까지 성능에 지장을 주지 않는 방식을 취할수도 있다는 말입니다.

 

그렇다고요...

 

다시 진지하게 정리할께요.
잘만쓰면, 적절한 시점에만 메모리 할당을 하여 사용할 수 있다는 이야기가 됩니다.

 

추가적인 정보

lazy stored property는 lazy modifier로 선언해야 합니다.
let은 쓸수 없고, var로만 사용이 가능합니다.

 

그럼 오늘도 여기까지

또 만나요!!!

반응형