O termo que você está procurando é uma plataforma que suporta arquiteturas de plug -in  ou 
 Sistemas de módulo  . Muitos tipos diferentes de software podem se enquadrar nessa categoria, dependendo das funções específicas que eles desempenham. Aqui estão alguns exemplos:  
 Sistemas operacionais:   * 
 Linux: Utiliza extensivamente os módulos de kernel carregáveis (LKMS) para adicionar drivers de dispositivo, sistemas de arquivos e outras funcionalidades no nível do sistema.   
 Navegadores da web:   * 
 Firefox: Historicamente, o Firefox era muito popular por suas extensões (embora o sistema de extensão tenha mudado com o tempo). 
 * 
 Chrome: Usa extensões, embora com diretrizes mais rigorosas de segurança e API do que o Firefox mais antigo.   
 servidores da web:   * 
 apache: Usa módulos para adicionar funcionalidade como suporte a PHP, reescrita de URL, recursos de segurança etc.   
 Sistemas de Gerenciamento de Conteúdo (CMS):   * 
 WordPress: Usa plugins extensivamente. O WordPress é totalmente baseado em plug-in. 
 * 
 drupal: Usa módulos. 
 * 
 joomla!: Usa extensões.   
 Ambientes de desenvolvimento integrado (IDES):   * 
 Código do Visual Studio: Fortemente baseado em extensões. Quase todos os recursos do VS Code são implementados como extensões. 
 * 
 eclipse: Usa plugins. 
 * 
 Intellij Idea (e outros JetBreins Ides): Usa plugins.   
 Software de edição de áudio/vídeo:   * 
 Adobe Photoshop: Usa plugins para filtros, formatos de arquivo e outros recursos. 
 * 
 Adobe Premiere Pro: Usa plugins para efeitos, transições e suporte ao codec. 
 * 
 Audacia: Usa plugins (efeitos, análise de áudio, etc.).   
 Software de modelagem 3D:   * 
 Blender: Usa scripts e complementos do Python para uma ampla gama de funcionalidades. 
 * 
 Autodesk Maya: Usa scripts e plugins MEL (idioma incorporado maia).  
 Motores de jogo 
:   * 
 Unidade: Usa "ativos" (que podem incluir código, modelos, texturas etc.) que podem ser adicionados aos projetos. 
 * 
 Motor irreal: Usa plugins.   
 Outros exemplos:   * 
 players de mídia (por exemplo, VLC): Use plugins para suporte ao codec e outros recursos. 
 * 
 editores de texto (por exemplo, texto sublime): Use plugins para suporte ao idioma, conclusão de código, etc. 
 * 
 Sistemas de banco de dados (por exemplo, PostgreSQL): Deixe extensões para adicionar novos tipos de dados, funções e outros recursos.   
 Principais recursos de módulos/plugins de suporte de software:   * 
 API bem definida (interface de programação de aplicativos): Isso é crucial. O software fornece um conjunto definido de funções, classes e estruturas de dados que os plugins podem usar para interagir com o sistema principal. Uma API estável é vital para que os plugins não quebrem com todas as atualizações de software. 
 * 
 Mecanismo de carregamento do plugin/módulo: O software precisa de uma maneira de descobrir, carregar e inicializar plugins. Isso pode envolver diretórios de digitalização, usar arquivos de configuração ou fornecer uma interface de gerenciamento de plug -in. 
 * 
 Considerações de segurança: Importante. O software precisa isolar os plugins em certa medida para impedir que plugins maliciosos ou mal escritos colidam com todo o sistema ou comprometendo a segurança. Isso geralmente envolve sandboxing ou limitação das permissões que os plugins têm. 
 * 
 Gerenciamento de dependência: Um sistema para gerenciar dependências (outros plugins, bibliotecas ou recursos) que os plugins exigem. 
 * 
 Metadados do plug -in: Informações sobre um plug -in (nome, versão, autor, descrição, dependências) que o software pode usar para gerenciar plugins.   
 Considerações importantes ao escolher uma plataforma com uma arquitetura de plug -in:   * 
 A qualidade da API: É bem documentado, estável e abrangente? 
 * 
 O tamanho do ecossistema de plug -in: Já existem muitos plugins disponíveis para as tarefas que você precisa executar? 
 * 
 O modelo de segurança: Quão bem a plataforma se protege de plugins maliciosos? 
 * 
 O processo de desenvolvimento do plugin: É fácil criar e distribuir plugins para a plataforma? 
 * 
 desempenho: Quanto os plugins afetam o desempenho geral do software?  
 Em resumo, existem muitos programas de software * que permitem que usuários e desenvolvedores estendam sua funcionalidade por meio de módulos ou plugins. O programa específico que você precisa depende inteiramente do tipo de funcionalidade que você está tentando estender.