C#

3개의 글
thumbnail

.NET 배열 공변성으로 인한 성능 고려사항

공변성(Covariance)은 어려운 용어처럼 들리지만, '따라서 같이 변할 수 있는 성질'이라는 간단한 의미이다. 예를 들어 A라는 타입이 B라는 타입으로 바뀔 수 있을 때, 여기에서 파생되는 C<A> 타입이 C<B> 타입으로 ...

thumbnail

.NET Sealed 클래스 성능 고려사항

C#에는 더 이상 상속할 수 없음을 나타내는 sealed 키워드가 있다. 프레임워크처럼 다른 개발자가 내 클래스를 사용할 때 잘못된 확장을 막기 위해 sealed를 붙여 상속을 차단할 수 있다. 다만 .NET 디자인 지침에서는 확장성을 위해 굳이 se...

thumbnail

.NET에서 DateTime 후킹으로 시간 속이기

개발하다 보면 테스트 목적으로 시간을 변경해야 하는 필요가 생길 때가 있다. Windows 경우 보통 제어판에서 시간을 바꿀 수 있고, 실행되어있는 프로그램에도 바로 바뀐 시간이 적용된다. 하지만 회사 정책으로 시간 변경이 막혀있거나, 실행 중인 서버...