Mostrando entradas con la etiqueta plugin. Mostrar todas las entradas
Mostrando entradas con la etiqueta plugin. Mostrar todas las entradas

lunes, 26 de septiembre de 2011

Tutorial: Crear plugins con MEF (Managed Extensibility Framework)

Introducción

MEF es un conjunto de componentes  incluidos en el framework 4.0 que nos permite hacer aplicaciones extensibles. MEF intenta resolver el problema que supone extender una aplicación en tiempo de ejecución, es decir, da una solución estandarizada para aquellas aplicaciones que pretendan usar un modelo de plugins.
Para trabajar con MEF debemos conocer los siguientes conceptos:
·    Composition part. Parte extensible, le llamaremos simplemente parte la cual proporcionará servicio a otras partes y consumirá servicios proporcionados por otras partes. Estas partes pueden estar dentro del propio ensamblado de la aplicación o en un ensamblado externo. Una parte puede ser una clase, propiedad o método. Estas partes se decoran con un atributo de exportación o de importación.
·    Export. Es un servicio exportado por una parte.
·    Import. Es un servicio consumido por una parte.
·    Contrat. Contrato, es un identificador para un Export o un Import. Un Export especifica el contrato que proporciona y un Import especifica el contrato que necesita.
·    Composition. Es la acción por la cual de forma dinámica y en tiempo de ejecución  las distintas partes son instanciadas y se hace coincidir los Import con los Export.