차례:
정의-심은 무엇을 의미합니까?
C #에서 Shim은 기본 클래스의 데이터와 동작을 상속하고 형식 만 다른 파생 클래스가있는 기본 클래스에서 파생 된 템플릿 클래스입니다. shim 클래스의 파생 클래스는 shim 클래스에서 제공 한 구현을 재사용합니다.
Shim은 최신 버전의 응용 프로그램 개발 중에 발생할 수있는 호환성 문제를 해결할 수있는 얇은 호환성 계층으로 작동하도록 설계 될 수 있습니다. 또한 원래 설계되지 않은 소프트웨어 플랫폼에서 응용 프로그램을 실행하는 데 사용됩니다.
일반적으로 shim 클래스는 주로 shim 클래스의 파생 클래스를 통해서만 기능에 액세스하는 데 사용됩니다. 이 접근 방식은 코드 확장 성을 제공하는 데 도움이됩니다. 또한 코드 중복을 방지하고 잘라 내기 및 붙여 넣기로 인한 오류를 방지합니다. 이는 비용이 절감되고 유지 관리 비용이 절감 될 수 있음을 의미합니다.
Techopedia는 심을 설명합니다
shim 클래스는 유형을 매개 변수로 사용하는 템플릿 클래스입니다. 상속 체인의 모든 수준에서 사용할 수 있으며 계층 구조를 더 잘 유지 관리하고 확장 할 수 있습니다.
shim 클래스는 포함 및 집계 방법을 사용하여 구현할 수 있습니다. 격리 접근 방식의 경우 shim 클래스는 추가 동작을 제공하기 위해 인터페이스를 다시 구현하기 위해 해당 호출을 전달합니다. 집계 방법에서 내부 클래스에 대한 인터페이스는 외부 개체로 전달되며 내부 개체의 동작에 대한 전문화는 없습니다.
예를 들어 Wine은 많은 Windows 응용 프로그램을 Linux, Solaris 등과 같은 운영 체제에서 실행할 수있는 shim입니다.
일부 초기화 후 관리되지 않는 코드에 대한 호출을 관리되는 코드에서 전달해야하는 경우 shim 클래스를 래퍼 클래스로 사용할 수 있습니다. 이 shim 클래스는 직접 사용할 수 없지만 공통 기능을 가진 파생 클래스를 생성 할 수있는보다 일반적인 클래스로 만들 수 있습니다. shim 클래스가 공통 기능을 포함하는 기본 클래스와 사용자 정의 기능을 가진 파생 클래스 사이의 링크를 형성하는 프레임 워크를 빌드하는 데 도움이됩니다.
Microsoft Office 호스트 응용 프로그램과 관리되는 확장을 연결하는 COM shim은 보안을 제공하고 여러 Microsoft Office 확장을 격리시킵니다.
이 정의는 C #의 맥락에서 작성되었습니다.