C#에서 object, generic타입은 모두 유연한 데이터형을 사용하기 위한 타입이다. object는 모든 데이터형의 최상위 타입으로 어떤 데이터 형이든 저장할 수 있는 유연성을 제공한다. 하지만 object를 사용할 때는 값 타입을 참조형으로 변환할 때 박싱/언박싱이 발행하여 성능에 영향이 끼친다.
제네릭 타입의 경우에는 컴파일 타임에 타입을 지정해줘 object에 비해 타입 안전성이 높고, 값 타입을 박싱 / 언박싱 하지도 않아 유연성을 높여준다.
다만, .NET Framework 2.0 보다 낮아 제네릭을 지원하지 않는 경우에는 object 타입을 사용해야할 수도 있다.
'내일배움캠프' 카테고리의 다른 글
내일 배움 캠프: 안 좋은 코드 습관(1) (0) | 2024.11.25 |
---|---|
내일배움캠프: 유니티 Character Controller (0) | 2024.11.11 |
내일배움캠프: for문을 통한 AddListener 등록 시 인자 전달 문제 해결 방법 (1) | 2024.11.07 |
내일배움캠프: 이벤트 버스 패턴 (Event Bus Pattern) (0) | 2024.11.02 |
내일배움캠프: 유니티 JsonUtility을 활용한 데이터 저장 및 불러오기 (0) | 2024.11.01 |