O Managed Extensibility Framework (MEF) é uma nova biblioteca no. NET Framework que permite uma maior reutilização de aplicações e componentes. Usando MEF, aplicações . NET podem fazer deixar de serem estaticamente compiladas para serem dinamicamente compostas.
Abaixo vemos uma pequena amostra de código com o novo framework, representado pelos atributos que decoram a classe SimpleMortgageCalculator.
[Export(typeof(IMortgageCalculator))] [ExportMetadata(“Calculation”, “Simple”)] [ExportMetadata(“Tax Aware”, null)] public class SimpleMortgageCalculator : IMortgageCalculator { public ILogger Logger { get; set; } public float Calculate() { Logger.Log("Calculating Mortgage"); return ...; } }
O MEF permite ser utilizado num servidor web onde você pode utilizar uma parte isolada de outras instâncias da mesma aplicação. Basicamente, a idéia é simplificar o design e construção de aplicações e componentes com alta extensibilidade.
O MEF está disponível no CodePlex aqui.
Comentários recentes