반응형
https://constructionsite.tistory.com/38
[C#] public 필드 vs 자동 구현 프로퍼티 비교 분석
이 글은 C#에서 public 필드(Field)와 자동 구현 프로퍼티(Auto-Implemented Property) 중 무엇을 사용해야 하는가 고민에서 시작하여, 필드와 자동 구현 프로퍼티의 차이점, 성능에 관해 실험해본 내용을 다
constructionsite.tistory.com
멤버 접근
필드 멤버 접근이 프로퍼티 멤버 접근보다 빠릅니다.
class Gun //public 필드
{
public int Bullet;
public void Fire() {
Bullet--;
}
}
class Gun //자동 구현 프로퍼티
{
public int Bullet { get; set; }
public void Fire() {
Bullet--;
}
}
100만 건 이상의 처리에서 둘을 비교했을 때, 프로퍼티가 2ms 정도 더 느렸으나 100 만 건 이상의 처리에서 2ms이므로
유의미한 성능차이는 없다고 봐도 무방할 것입니다.
프로퍼티는 데이터 바인딩을 할 수 있고, 외부에서 접근하는 것을 제한할 수 있다. 그렇지만 프로퍼티를 다루는 데 불필요한 과정이 있는 것도 맞다. 그래도 이는 성능에 민감한 상황 제외하고는 크게 중요하지는 않다고 한다.
반응형
'C#' 카테고리의 다른 글
[C#] ArrayList와 List의 차이 (0) | 2023.06.07 |
---|---|
[C#] .NET 소스 레퍼런스 (0) | 2023.05.18 |
[C# to JSON] DateTime 형식 변환 (0) | 2023.05.12 |
[C#] object를 JSON 형식으로 바꾸기 (0) | 2023.05.11 |
[C#] Convert DataSet to List (0) | 2023.05.10 |