Hogar Desarrollo ¿Qué es una cuña? - definición de techopedia

¿Qué es una cuña? - definición de techopedia

Tabla de contenido:

Anonim

Definición - ¿Qué significa Shim?

Shim, en C #, es una clase de plantilla que se deriva de una clase base con clases derivadas que heredan los datos y el comportamiento de la clase base y varían solo en el tipo. La clase derivada de la clase shim reutiliza la implementación proporcionada por la clase shim.

Shim puede diseñarse para actuar como una capa delgada de compatibilidad, que puede resolver los problemas de compatibilidad que pueden surgir durante el desarrollo de nuevas versiones de aplicaciones. También se usa para ejecutar aplicaciones en plataformas de software para las cuales no fueron diseñadas originalmente.

En general, la clase shim se usa principalmente para proporcionar acceso a la funcionalidad solo a través de las clases derivadas de la clase shim. Este enfoque ayuda a proporcionar la extensibilidad del código. También evita la duplicación de código y evita errores debidos a cortar y pegar. Esto puede significar menores costos y menos mantenimiento.

Techopedia explica Shim

Una clase de shim es una clase de plantilla que toma el tipo como parámetro. Se puede usar en cualquier nivel de una cadena de herencia y puede proporcionar un mejor mantenimiento y extensión de la jerarquía.

Se puede implementar una clase shim utilizando métodos de contención y agregación. En caso de un enfoque de contención, la clase shim pasa sus llamadas a la reimplementación de la interfaz para proporcionar un comportamiento adicional. En el método de agregación, la interfaz con la clase interna se pasa al objeto externo y no existe una especialización del comportamiento del objeto interno.

Por ejemplo, Wine es una cuña que permite que muchas aplicaciones de Windows se ejecuten en sistemas operativos como Linux, Solaris, etc.

En los casos en que la llamada al código no administrado debe reenviarse del código administrado después de algunas inicializaciones, la clase shim se puede usar como una clase de contenedor. Esta clase de shim se puede crear como una clase más genérica que no se puede usar directamente, pero permite la generación de clases derivadas que tienen una funcionalidad común. Ayuda a construir un marco en el que la clase shim forma el enlace entre la clase base que contiene funcionalidades comunes y las clases derivadas que tienen funciones personalizadas.

Un calzo COM que vincula una aplicación host de Microsoft Office y una extensión administrada ayuda a proporcionar seguridad y aísla múltiples extensiones de Microsoft Office.

Esta definición fue escrita en el contexto de C #
¿Qué es una cuña? - definición de techopedia