InMemoryLoader é uma biblioteca de funções ou classes escrita em C# (Mono) que permite o carregamento dinâmico de assemblies .NET em tempo de execução.
Notas de lançamento
O projeto "InMemoryLoader" surgiu da necessidade ou ideia de desenvolver um framework web para aplicações de negócios que fosse o mais modular possível. Uma grande variedade de tecnologias (websites ASP, serviços SAP, serviços web, sistemas CMS, diferentes bases de dados) tiveram de ser combinadas ou os dados destes sistemas tiveram de ser combinados numa única aplicação.
Para garantir que as aplicações individuais permanecessem modulares, enxutas e fáceis de manter, os componentes individuais tiveram que ser divididos em módulos individuais. Os módulos individuais deveriam ser vinculados ou combináveis, por isso foi desenvolvido um módulo que permite administração, registro e execução.
Os componentes devem implementar uma interface, após a qual o método de inicialização verifica e insere todos os métodos públicos em uma espécie de “registro” para que sejam completamente preservados no contexto da aplicação em tempo de execução.
Isso possibilita aplicações muito eficientes sem referências fixas, o que significa que o projeto pode ser mantido muito mais enxuto e eficiente. Além disso, a funcionalidade pode ser facilmente adicionada em tempo de execução e, assim, reduzir enormemente o tempo de inicialização dos aplicativos.
Outra vantagem é que diferentes contêineres de funções podem ser criados.
Em uma aplicação, a função do usuário pode primeiro ser consultada e depois a biblioteca/componentes correspondentes podem ser recarregados dinamicamente. Isto não só aumenta o desempenho, mas as funções também ficam disponíveis apenas no respectivo contexto, tornando as aplicações mais seguras.
Componente com interfaces e classes abstratas que devem ser utilizadas para implementar aplicações InMemoryLoader. Serve para inicialização e instanciação, caso contrário não contém nenhuma função necessária.
InMemoryLoaderBase WIKI
O núcleo de um aplicativo InMemoryLoader contém todos os métodos e propriedades necessários para construí-lo.
InMemoryLoaderWIKI
Extensão que inclui recursos adicionais, como wrapper assíncrono, ferramentas de criptografia, utilitários de string e conversores. NÃO é absolutamente necessário!
InMemoryLoaderCommon WIKI