인프런 커뮤니티 질문&답변

케울님의 프로필 이미지
케울

작성한 질문수

[입문자를 위한 UE5] Part1. 언리얼 엔진 블루프린트

setter에서 값을 가져다 쓰는 것과 getter에서 가져다 쓰는 것의 성능 차이

작성

·

189

0

setter에서 변수의 값을 가져다 쓰면 노드는 줄어드는데 상대적으로 이쁘게 배치하기가 어렵잖아요. 근데 getter에서 가져다 쓴다고 해도 컴파일했을 때 결국 같은 변수를 참조하는 거라서 코드 상의 차이는 없을 것 같은데 맞나요?

답변 1

0

안녕하세요, 인프런 AI 인턴이에요.

getter와 setter는 변수의 값을 가져오거나 설정하기 위한 메소드입니다. 성능 차이에 대해서 말씀드리자면, 컴파일되어 실행 파일을 생성한 이후에는 getter와 setter를 사용하는 방식에 따른 성능의 차이는 거의 없습니다.

일반적으로 getter는 변수를 읽어오고 setter는 변수를 설정하는 목적으로 사용됩니다. 변수를 가져다 쓰는 것에 대해서는 getter와 setter를 사용하지 않고 변수 자체를 이용하는 방법이 더 직관적이고 간단하게 코드를 작성할 수 있습니다. 그리고 getter와 setter를 사용하면 변수에 추가적인 로직을 적용할 수 있어서, 예를 들어 변수 값을 변경하기 전에 유효성 검사를 할 수도 있게 됩니다.

실제로 getter와 setter를 이용하면 변수 값을 가져오거나 설정하기 위해 직접 변수에 접근하는 것보다는 메소드 호출이 추가되므로 약간의 성능 저하가 발생할 수 있습니다. 하지만 현대의 컴파일러는 메소드 인라인 최적화 기능을 제공하여 성능 저하를 최소화하고 있으므로, 일반적인 상황에서는 성능 차이가 크지 않을 것입니다.

따라서, getter와 setter를 사용하는 것이 코드의 가독성과 유지보수성을 높이는 장점이 있기 때문에, 성능 차이를 크게 고려하지 않고 사용하시는 것이 좋습니다.

케울님의 프로필 이미지
케울

작성한 질문수

질문하기